Android 通知大图标覆盖空白小图标
Android notification large icon overlaid with blank small icon
顶部通知栏的小图标效果很好。大图标也会出现。但是,大图标的右下角被小图标覆盖,显示为白色。有人知道吗?谢谢。
![private void showNotification(Context context, Intent intent) {
PendingIntent contentIntent = PendingIntent.getActivity(context, 0,
new Intent(context, MainActivity.class), 0);
String title = intent.getExtras().getString("nTitle");
String message = intent.getExtras().getString("nMessage");
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
context);
Notification notification = mBuilder.setContentIntent(contentIntent)
.setSmallIcon(R.drawable.android)
.setColor(2)
.setLargeIcon(BitmapFactory.decodeResource(context.getResources(), R.drawable.fuckya))
.setWhen(0)
.setAutoCancel(true)
.setContentTitle(title)
.setStyle(new NotificationCompat.BigTextStyle().bigText(message))
.setContentText(message).build();
mBuilder.setContentIntent(contentIntent);
mBuilder.setDefaults(Notification.DEFAULT_SOUND);
mBuilder.setAutoCancel(true);
NotificationManager mNotificationManager =
(NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(1, mBuilder.build());
}][1]
Parameters
argb -The accent color to use
您传递的 2
不是有效的 ARGB 颜色,因此您的小图标的背景颜色无法正确显示。相反,请选择有效的 ARGB 颜色。
如果您有想要使用的颜色资源,可以使用诸如
之类的代码
.setColor(context.getResources().getColor(R.color.notification_color))
此外,请注意 Android 5.0 changes 状态:
Update or remove assets that involve color. The system ignores all non-alpha channels in action icons and in the main notification icon. You should assume that these icons will be alpha-only. The system draws notification icons in white and action icons in dark gray.
您的小图标应该是完全白色和透明的 - 您可以使用 Notification Icon Generator 等工具生成合适的图标。
顶部通知栏的小图标效果很好。大图标也会出现。但是,大图标的右下角被小图标覆盖,显示为白色。有人知道吗?谢谢。
![private void showNotification(Context context, Intent intent) {
PendingIntent contentIntent = PendingIntent.getActivity(context, 0,
new Intent(context, MainActivity.class), 0);
String title = intent.getExtras().getString("nTitle");
String message = intent.getExtras().getString("nMessage");
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
context);
Notification notification = mBuilder.setContentIntent(contentIntent)
.setSmallIcon(R.drawable.android)
.setColor(2)
.setLargeIcon(BitmapFactory.decodeResource(context.getResources(), R.drawable.fuckya))
.setWhen(0)
.setAutoCancel(true)
.setContentTitle(title)
.setStyle(new NotificationCompat.BigTextStyle().bigText(message))
.setContentText(message).build();
mBuilder.setContentIntent(contentIntent);
mBuilder.setDefaults(Notification.DEFAULT_SOUND);
mBuilder.setAutoCancel(true);
NotificationManager mNotificationManager =
(NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(1, mBuilder.build());
}][1]
Parameters
argb -The accent color to use
您传递的 2
不是有效的 ARGB 颜色,因此您的小图标的背景颜色无法正确显示。相反,请选择有效的 ARGB 颜色。
如果您有想要使用的颜色资源,可以使用诸如
之类的代码.setColor(context.getResources().getColor(R.color.notification_color))
此外,请注意 Android 5.0 changes 状态:
Update or remove assets that involve color. The system ignores all non-alpha channels in action icons and in the main notification icon. You should assume that these icons will be alpha-only. The system draws notification icons in white and action icons in dark gray.
您的小图标应该是完全白色和透明的 - 您可以使用 Notification Icon Generator 等工具生成合适的图标。