如何在Android中显示状态栏和通知栏的不同图标?

时间:2014-07-15 10:07:49

标签: android android-notifications android-notification-bar

我根据android documentation创建了Android通知。我在通知栏中使用了大图标和小图标。

在这种情况下,状态栏通知栏上都会显示小图标。我想显示状态栏和通知栏的不同图标,我该如何实现?

2 个答案:

答案 0 :(得分:7)

In the documentation;有通知区域和通知抽屉,我认为在您的情况下状态栏表示通知区域。您可以使用以下代码通过设置小图标和大图标来创建通知。

Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.ic_icon);
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this).setSmallIcon(R.drawable.logo).setLargeIcon(bm).setContentTitle("title").setContentText("body");

大图标是位图,它显示在通知抽屉中,小图标显示在通知区域中,但也显示在通知抽屉中,位于大图标的右下角。 It must be entirely white。如果小图标是彩色图标,则会在通知区域中显示为白色方块。

答案 1 :(得分:1)

每种API都有不同的API。见下文:

Notification.Builder nb = new Notification.Builder(context)
    .setContentTitle("title")
    .setContentText("content")
    .setAutoCancel(true)
    .setLargeIcon(largeIcon)
    .setSmallIcon(R.drawable.small_icon)
    .setTicker(s.getText());

http://developer.android.com/reference/android/support/v4/app/NotificationCompat.Builder.html#setSmallIcon%28int%29

http://developer.android.com/reference/android/support/v4/app/NotificationCompat.Builder.html#setLargeIcon%28android.graphics.Bitmap%29

OR

作为替代方案,您可以使用自定义通知布局。