大通知图标背景

And*_*nko 25 android android-notifications android-5.0-lollipop

由于通知中的Android 5.0大图标具有彩色背景:

棒棒糖通知

对于小图标,它是notification(Notification.Builder.setColor(int))的强调颜色.如何将其设置为大图标?它是实际图像的一部分吗?如果是,圆半径应该是多少?

alx*_*cms 32

是的,大图标的颜色是实际图像的一部分.棒棒糖上的大图标尺寸为40x40dp,光学视图填充整个图像.因此,您应创建一个40x40dp的资源,其半径为20dp.您可以按如下方式设置通知的大图标:

NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(context)
    .setSmallIcon(R.drawable.notification_small_icon)
    .setLargeIcon(notificationLargeIconBitmap)
    .setContentTitle("Notification")
    .setContentText("Content text")
    .setColor(context.getResources().getColor(R.color.accent_color));
Run Code Online (Sandbox Code Playgroud)

如果您需要来自可绘制资源的大图标,您可以获得如下所示的Bitmap实例:

Bitmap notificationLargeIconBitmap = BitmapFactory.decodeResource(
    context.getResources(), 
    R.drawable.notification_large_icon);
Run Code Online (Sandbox Code Playgroud)

如果您希望您的通知与以前版本的android(kitkat及以下版本)很好地显示,那么您应该拥有尺寸为64x64dp的大图标的平方版本.