Android 5+自定义通知XML布局和RemoteViews,如何为ImageButton设置正确的图标色调?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (71)

我的应用程序是使用自定义通知布局与RemoteViews。

要显示文本,布局使用以下系统样式:

android:TextAppearance.Material.Notification.Title android:TextAppearance.Material.Notification

这个很好用。

但是,不能使用TextApemarance样式来设置android:tint所以我不得不硬编码颜色。没有设置NotificationImageButton tint的特殊系统样式。

硬编码的颜色在当前的Android 5+系统上运行良好,但是一些用户安装了带有自定义暗主题的自定义ROM,并且通知看起来不对,即黑色背景上的黑色图标。

有没有任何方法可以获得系统通知图标/图像按钮颜色,并从XML布局中应用它?

提问于
用户回答回答于

对不起,但据我所知,自定义ROM有单独的系统设计,配置,以及非官方的。

因此,在不了解其设计的情况下支持自定义ROM是不可能的。而AndroidAPI则支持官方ROM。

用户回答回答于
public static Bitmap icon ;

icon = BitmapFactory.decodeResource(getApplicationContext().getResources(), R.drawable.YOUR_IMAGE);


     mBuilder = new NotificationCompat.Builder(this);
        mBuilder.setShowWhen(false);
        mBuilder.setDefaults(Notification.DEFAULT_ALL);
        mBuilder.setVisibility(NotificationCompat.VISIBILITY_PUBLIC);
        mBuilder.setSmallIcon(R.drawable.image1);
        mBuilder.setContentText("this text not visible");
        mBuilder.setLargeIcon(icon);
        mBuilder.setPriority(Notification.PRIORITY_DEFAULT);
        mBuilder.setContent(contentNotifySmall); // ORI
        //mBuilder.setAutoCancel(false);
        mBuilder.setCustomBigContentView(contentNotify);

扫码关注云+社区

领取腾讯云代金券