Android通知显示错误图标

时间:2016-10-29 09:43:51

标签: android notifications icons notificationmanager google-material-icons

我有一个带有Icon ID的静态数组:

public static final int[][] ICON_IDS = { {R.drawable.ic_access_alarm_black_24dp, R.drawable.ic_access_time_black_24dp, R.drawable.ic_account_box_black_24dp, R.drawable.ic_add_black_24dp, R.drawable.ic_android_black_24dp, R.drawable.ic_clear_black_24dp, R.drawable.ic_delete_black_24dp },
        { R.drawable.ic_settings_black_24dp, R.drawable.ic_airplanemode_active_black_24dp, R.drawable.ic_filter_list_black_24dp, R.drawable.ic_account_box_black_24dp, R.drawable.ic_airline_seat_individual_suite_black_24dp, R.drawable.ic_delete_black_open_24dp, R.drawable.ic_delete_black_open_24dp}};

我显示所有图标,用户可以选择一个。所选图标的ID将传递给通知管理器。它会显示如下通知:

NotificationCompat.Builder mBuilder =
            new NotificationCompat.Builder(this)
                    .setSmallIcon(notification.getIconId())
                    .setContentTitle(notification.getTitle());

我已经使用了" test-ImageView" id是正确的。 ImageView显示用户选择的图标(使用setImageResource(notification.getIconId());)。但是在通知栏中的通知上显示另一个图标或没有。 如果我使用.setLargeIcon(),它会再次显示正确的图标。

.setLargeIcon(BitmapFactory.decodeResource(getResources(), notification.getIconId()))

但只有大图标。小图标为空。

图标是通过矢量资源导入的素材图标。

这有什么问题?

1 个答案:

答案 0 :(得分:0)

找出原因。您不能将xml资源用作通知图标。