繁体   English   中英

Android 状态栏颜色变化

[英]Status bar color changing in Android

当我将状态栏颜色更改为白色时,它使通知不可见,因为它们也是白色的。 如何将状态栏的颜色更改为白色并将通知图标更改为黑色或其他颜色?

我试图通过更改themes.xml的这一行来更改其颜色:

<item name="android:statusBarColor">?attr/colorPrimaryVariant</item>

您应该在同一主题中使用<item name="android:windowLightStatusBar">true</item> 它至少需要 API 23。

要在 API 21 上将状态栏颜色更改为白色,通知图标颜色更改为黑色或其他颜色,您可以使用以下方法:

在您的 styles.xml 文件中,使用以下行将状态栏的颜色设置为白色:

<item name="android:statusBarColor">#FFFFFF</item>

要更改通知图标的颜色,可以使用 NotificationCompat.Builder class 的 setColor() 方法。例如:

NotificationCompat.Builder builder = new NotificationCompat.Builder(this)
                .setSmallIcon(R.drawable.icon)
                .setContentTitle("Title")
                .setContentText("Content")
                .setColor(Color.BLACK);

要更改 API 21 及以上版本的通知图标颜色,可以使用 NotificationCompat.Builder class 的 setColorized() 方法。例如:

NotificationCompat.Builder builder = new NotificationCompat.Builder(this)
                .setSmallIcon(R.drawable.icon)
                .setContentTitle("Title")
                .setContentText("Content")
                .setColorized(true)
                .setColor(Color.BLACK);

这应该将状态栏的颜色更改为白色,将通知图标更改为黑色或 API 21 上的其他颜色。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM