更改棒棒糖上的通知图标背景
我正在通过通知devise模式 ,并没有发现任何谈到通知图标背景。 您可能注意到,自定义通知只有浅灰色的背景。 但环聊等应用程序或简单的USBdebugging通知具有自定义的通知图标背景颜色。
有没有可能把灰色变成别的东西? (以编程方式指定特定的圆圈颜色)
1)获取颜色
int color = 0xff123456; int color = getResources().getColor(R.color.my_notif_color); int color = ContextCompat.getColor(context, R.color.my_notif_color);
2)将颜色设置为通知
NotificationCompat.Builder builder = new NotificationCompat.Builder(this); ... builder.setColor(color); Notification notif = builder.build();
颜色只在棒棒糖上受到尊重,只影响小图标的背景。 如果显示一个大图标,它的内容完全是你的责任。
来源: NotificationCompat.Builder#setColor(int)
如果你已经在colors.xml中定义了颜色,那么在你的NotificationBuilder中添加值为
.setColor(getResources().getColor(R.color.<YOUR_COLOR>))
这应该可以解决你的问题。 它只影响图标的背景。
getColor(int)
在Resources
上已被弃用
我们现在应该使用这些替代方法之一:
-
Resources
的getColor(int,Theme) -
ContextCompat
的getColor(上下文上下文,int id)
- Android:位图回收()如何工作?
- java.lang.NullPointerException:尝试调用空对象引用的虚拟方法'int android.view.View.getImportantForAccessibility()'
- 获取没有数组名称的JSONArray?
- Android的XXHDPI资源
- Firebase FCM通知click_action有效内容
- 在Listview中使用复选框获取选定的项目
- 在Android Studio中运行Robolectrictesting时如何进行debugging?
- 如何在Android中支持阿拉伯文字?
- 如何使用“共享图像使用”共享意图在Android共享图像?