当前位置: 首页 > 知识库问答 >
问题:

根据上下文更改Android小通知图标颜色

宁飞宇
2023-03-14

我已经找了好几天的stack overflow来寻找这个问题的答案,但是我一辈子都找不到答案:-/

在我的搭载Android O的三星S6上,像Gmail这样的应用在状态栏上有白色的通知,但当你拉下通知查看它们时,会有红色/蓝色/绿色/任何通知。例如,请参见附上的照片--当显示通知时,Gmail为红色,而在通知栏中为白色。

要实现这一点,你必须使用什么类型的Android编程魔法?更具体地说,在notification.builder中,我需要设置哪些值才能使它以这种方式显示?有两个不同的图标吗?有多层抽屉吗?如果是,如何选择哪些层显示在哪里?谢谢!

共有1个答案

华展鹏
2023-03-14

首先,我们应该使用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)应该是白色的,并且应该有一点不透明度(应该只是一点透明)。之后,顶部通知图标将为白色,当您绘制通知时,它将变为r.color.your_color

 类似资料:
  • 根据android iconography文档,状态栏中的图标应该是完全白色的,背景是透明的。然而,即使是内置的图标似乎也不都遵循这种模式。信号质量(适用于wifi和电池)、电池指示器和其他一些新设备上的图标上有全息蓝色背景。这个颜色是不是内置在图标本身?我正在寻找实现一个状态栏图标与我的应用程序,将表明一个连接到外部(蓝牙)设备的状态。我计划做我的公司徽标(它是一个相当简单的,大部分是圆形的形状

  • 我在查看通知设计模式,没有发现任何关于通知图标背景的内容。正如您可能注意到的,自定义通知只有一个浅灰色背景。但是像Hangouts这样的应用程序,或者仅仅是USB调试通知,其通知图标的背景有一个自定义的颜色。 有没有可能把那灰色换成别的东西?(以编程方式指定圆颜色)

  • 我想用我自己的推送通知图标替换默认图标。 现在,应用程序将图标显示为白色框。

  • 我的目标的在线示例: 我试图在分类页面上显示自行车产品。每个产品上都有一种不同的边框颜色,我用圆形div来显示。 当我点击一种颜色时,图像应该会发生变化,正如你在专业网站上看到的那样:(产品图像下方)专业示例。 我自己的网站 您可以在这里看到我自己的示例:我自己的网站示例(向下滚动,直到您看到具有多个产品的产品)。 我的目标功能: 当我单击绿色div时,我想显示图片2,当我单击红色div时,我想看

  • 我最近用了这些教程:

  • 是否可以更改“火灾”/“救护车”/“警察”的文本颜色? 或者像在旧版本的Android中那样添加图标?