3

Я пытаюсь показать значок на панели уведомлений. Значок - это LevelListDrawable, который может изменять контент, задавая уровни. Вопрос в том, что я не могу установить уровень значка в уведомлении. Я попытался использовать «Notification.icon» и «Notification.iconLevel», но это не работает.Показать LevelListDrawable на панели уведомлений

Вот мой фрагмент кода. может ли кто-нибудь увидеть, что случилось?

Notification notification = new Notification(R.drawable.ic_stat_notify, "", System.currentTimeMillis()); 
notification.icon = R.drawable.ic_stat_notify; 
notification.iconLevel = 30; 
notification.setLatestEventInfo(context, "Hello", "World", intent); 
manager.notify(NOTIFICATION_ID, notification); 

Вот мой LevelListDrawable

?xml version="1.0" encoding="utf-8"?> 
level-list xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item android:drawable="@drawable/ic_stat_notify_0" 
     android:minLevel="0" 
     android:maxLevel="9"/> 
    <item android:drawable="@drawable/ic_stat_notify_10" 
     android:minLevel="10" 
     android:maxLevel="11"/> 
    <item android:drawable="@drawable/ic_stat_notify_20" 
     android:minLevel="20" 
     android:maxLevel="29"/> 
    <item android:drawable="@drawable/ic_stat_notify_30" 
     android:minLevel="30" 
     android:maxLevel="39"/> 
    <item android:drawable="@drawable/ic_stat_notify_40" 
     android:minLevel="40" 
     android:maxLevel="49"/> 
    <item android:drawable="@drawable/ic_stat_notify_50" 
     android:minLevel="50" 
     android:maxLevel="59"/> 
    <item android:drawable="@drawable/ic_stat_notify_60" 
     android:minLevel="60" 
     android:maxLevel="69"/> 
    <item android:drawable="@drawable/ic_stat_notify_70" 
     android:minLevel="70" 
     android:maxLevel="79"/> 
    <item android:drawable="@drawable/ic_stat_notify_80" 
     android:minLevel="80" 
     android:maxLevel="89"/> 
    <item android:drawable="@drawable/ic_stat_notify_90" 
     android:minLevel="90" 
     android:maxLevel="99"/> 
    <item android:drawable="@drawable/ic_stat_notify_100" 
     android:minLevel="100" 
     android:maxLevel="100"/> 
</level-list> 
+0

не могли бы вы разместить свой x-лист уровня? –

+2

Я нашел значок на строке состояния с уровнем. Но это неверно в окне уведомления в ящике. – Dennis

ответ

1

Если вы хотите, чтобы показать определенный значок уведомления в расширенном списке уведомлений, необходимо создать уведомление с «нормальным» Drawable без iconLevel и на в первом обновлении вы можете установить еще один значок (например, список уровня) и установить значокLevel.

Для обновления значка в строке состояния

notification.icon = R.drawable.ic_stat_notify; 
    notification.iconLevel = 30; 
    manager.notify(NOTIFICATION_ID, notification); 

это важно назвать уведомить(), чтобы сделать обновление видимым, и не обновит значок в расширенном списке, если вы не воссоздавать уведомления.

0

Это возможный дубликат этого: android Notification setSmallIcon with level-list

Это, кажется, ошибка в Android. При обновлении уведомления с помощью списка уровней значок значка состояния обновляется, но значок в раскрывающемся списке уведомлений отсутствует. Здесь сообщается: http://code.google.com/p/android/issues/detail?id=43179&q=setSmallIcon&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars

 Смежные вопросы

  • Нет связанных вопросов^_^