Android 5 Lollipop 中的通知栏图标变为白色

本教程将介绍Android 5 Lollipop 中的通知栏图标变为白色的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

Android 5 Lollipop 中的通知栏图标变为白色 教程 第1张

问题描述

我有一个显示自定义通知的应用.问题是在 Android 5 中运行时,通知栏中的小图标显示为白色.我该怎么解决这个问题?

推荐答案

接受的答案不(完全)正确.当然,它使通知图标显示为彩色,但这样做有一个很大的缺点 - 将目标 SDK 设置为低于 Android Lollipop!

如果您按照建议通过将目标 SDK 设置为 20 来解决白色图标问题,您的应用将不会以 Android Lollipop 为目标,这意味着您无法使用 Lollipop 特定的功能.

看看 http://developer.android.com/design/style/iconography.html,您会看到白色样式是通知在 Android Lollipop 中的显示方式.

在 Lollipop 中,Google 还建议您使用将显示在(白色)通知图标后面的颜色 - https://developer.android.com/about/versions/android-5.0-changes.html

所以,我认为更好的解决方案是在应用中添加一个剪影图标,并在设备运行 Android Lollipop 时使用它.

例如:

Notification notification = new Notification.Builder(context)
.setAutoCancel(true)
.setContentTitle("My notification")
.setContentText("Look, white in Lollipop, else color!")
.setSmallIcon(getNotificationIcon())
.build();

 return notification;

并且,在 getNotificationIcon 方法中:

private int getNotificationIcon() {
 boolean useWhiteIcon = (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP);
 return useWhiteIcon ? R.drawable.icon_silhouette : R.drawable.ic_launcher;
}

好了关于Android 5 Lollipop 中的通知栏图标变为白色的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。