解決5.0以上通知欄圖示變白
阿新 • • 發佈:2018-12-25
5.0以上,系統會自動將通知欄圖示全部填充為白色,解決方法如下:
final NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
//TODO
//FLAG_UPDATE_CURRENT:如果構建的PendingIntent已經存在,則替換它,常用
final PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG _UPDATE_CURRENT);
final Notification notification = new NotificationCompat.Builder(context)
.setContentTitle(title)
.setSmallIcon(R.drawable.ic_notification)
.setContentText(content)
.setDefaults(Notification.DEFAULT_ALL)//鈴聲、閃光、震動均系統預設。
.setContentIntent(pendingIntent)
.setAutoCancel (true)//設定這個標誌當用戶單擊面板就可以讓通知將自動取消
.build();
mNotificationManager.notify(notificationId, notification);
建立資源drawable和drawable-v21
1.drawable中放入和啟動圖示相同,名為ic_notification的圖片
如:
2.drawable-v21中放入規矩形狀的圖片,命名為ic_notification
如:
簡單來說就是把背景圖層去掉
那麼5.0以下會使用和啟動圖示相同的通知欄圖示,5.0以上會使用簡單的白色規矩圖示,兩種不同的圖示