我一直在寻找堆栈溢出几天找到这个问题的答案,但我无法弄明白我的生活: - /
在我的带有Android O的Samsung S6上,像Gmail这样的应用程序会在状态栏中显示白色通知,但是当您拉下通知以单独检查时,会显示红色/蓝色/绿色/任何通知。例如,请参阅附带的照片 - 显示通知时为红色,通知栏中为白色。
必须采用什么类型的程序化Android魔法来实现这一目标?更具体地说,在Notification.Builder中,我需要设置哪些值才能以这种方式显示它?有两个不同的图标吗?是否有一个多层的drawable?如果是这样,如何选择在哪里显示哪些图层?谢谢!
答案 0 :(得分:3)
首先,我们应该使用lefthalf = alist[:mid].copy()
righthalf = alist[mid:].copy()
第二,这是实现该行为的代码
NotificationCompat.Builder
还有一件事,您正在使用的图标(NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(context, "NOTIFICATION_CHANNEL_NAME")
.setSmallIcon(R.drawable.notification_icon)
.setContentTitle(title)
.setContentText(message)
.setColor(ContextCompat.getColor(context, R.color.your_color))
.setContentIntent(pendingIntent);
)应该是白色的,并且应该具有一点不透明性(它应该只是一点透明性)。之后,您的顶部通知图标将为白色,当您绘制通知时,它将变为R.drawable.notification_icon