我正在使用自定义通知...如何设置不显示通知?并列出这些通知? 这是我的代码......
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "coming", Toast.LENGTH_LONG).show();
Bundle descBundle = intent.getExtras();
CharSequence desc = descBundle.getString("description");
int reminderId = descBundle.getInt("reminderId");
NotificationManager mNotificationManager;
mNotificationManager = (NotificationManager) context
.getSystemService(Context.NOTIFICATION_SERVICE);
PendingIntent contentIntent = PendingIntent.getActivity(context,
reminderId, new Intent(), PendingIntent.FLAG_UPDATE_CURRENT);
RemoteViews contentView = new RemoteViews(context.getPackageName(),
R.layout.main);
contentView.setImageViewResource(R.id.image, R.drawable.reminder_1);
contentView.setTextViewText(R.id.text, desc);
Notification notifyDetails = new Notification();
notifyDetails.icon = R.drawable.reminder_1;
notifyDetails.when = System.currentTimeMillis();
notifyDetails.tickerText = desc;
notifyDetails.iconLevel = 1;
notifyDetails.number = reminderId;
notifyDetails.contentView = contentView;
notifyDetails.contentIntent = contentIntent;
mNotificationManager.notify(0, notifyDetails);
}
我使用此代码显示通知...但它只显示一个通知内容...但图标显示没有通知...
答案 0 :(得分:3)
请记住,如果您希望为不同的对象显示多个通知,则必须为每个对象分配不同的通知ID。
例如,如果您有2个不同的对象,则必须调用
mNotificationManager.notify(0, notifyDetails);
和
mNotificationManager.notify(1, notifyDetails);
如果您不这样做,通知将始终为一,并且将始终更新。
答案 1 :(得分:2)
每个图标对应一个通知;您无法将多个通知与通知栏上的项目的一个实例相关联。
但是,您可以在图标上叠加一个数字(例如,显示图标代表的事件数),就像某些短信和电子邮件应用程序一样。
这是使用number
的{{1}}实例变量完成的,就像您在上面的代码段中一样。
修改强>
更清楚:如果您需要多个通知,则需要创建多个Notification
个对象并多次调用Notification
。
每个NotificationManager.notify()
只能生成一个图标,通知区域内可以包含一个内容,并且可以有一个Notification
与之关联。