我正在开发一个为用户创建通知的应用程序。我希望图标在状态栏中显示为白色,但在下拉通知菜单中显示为蓝色。以下是 Google Store 应用执行相同操作的示例。
状态栏中的白色通知:
下拉菜单中的彩色通知:
我怎样才能复制这个?我必须设置哪些属性?
编辑: 这是我当前的代码 - 我将图像全部设为白色,背景透明,因此在状态栏中看起来不错,但在通知下拉中,图像仍然是相同的白色:
private NotificationCompat.Builder getNotificationBuilder() {
return new NotificationCompat.Builder(mainActivity)
.setDeleteIntent(deletedPendingIntent)
.setContentIntent(startChatPendingIntent)
.setAutoCancel(true)
.setSmallIcon(R.drawable.skylight_notification)
.setColor(ContextCompat.getColor(mainActivity, R.color.colorPrimary))
.setContentTitle(mainActivity.getString(R.string.notification_title))
.setContentText(mainActivity.getString(R.string.notification_prompt));
}
最佳答案
我在这里找到了我的问题的答案:https://stackoverflow.com/a/44950197/4394594
我不完全知道问题出在哪里,但是通过将我用于图标的巨大 png 放入此工具 https://romannurik.github.io/AndroidAssetStudio/icons-notification.html#source.type=image&source.space.trim=1&source.space.pad=0&name=ic_skylight_notification
通过将生成的图标放入我的 mipmap 文件夹中,我能够让 setColor(...)
属性正常工作。
关于java - Android 颜色通知图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45874742/