1. 程式人生 > >解決5.0以上通知欄圖示變白

解決5.0以上通知欄圖示變白

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以上會使用簡單的白色規矩圖示,兩種不同的圖示