1

只是一个简单的问题:如何使单行通知在短时间内消失。

就像 Whatsapp 的一样:

Whatsapp 通知

我目前的通知代码还是很基础的:

Intent intent = new Intent("com.example.MyChat");
PendingIntent pIntent = PendingIntent.getActivity(context, 0, intent, 0);
Notification notification = new Notification.Builder(context)
        .setContentTitle("New message from " + name)
        .setContentText(message)
        .setSmallIcon(R.drawable.ic_launcher).setContentIntent(pIntent)
        .getNotification();

notification.defaults |= Notification.DEFAULT_SOUND;

NotificationManager notificationManager = (NotificationManager) context
        .getSystemService(context.NOTIFICATION_SERVICE);
notificationManager.notify(0, notification);

谢谢

4

2 回答 2

1

您可以使用AlarmManager在短时间内调用,例如 5 秒。

您还可以使用在第一次出现通知时启动的服务,它可以在一段时间后取消通知。

在这里您可以使用取消通知,

NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
        notificationManager.cancel(NOTFICATION_ID);

看看这篇文章,它也可能对你有所帮助。

于 2012-12-22T07:36:43.270 回答
1

这称为“ticker”,如果您设置了tickerTextNotification 的属性,它会在状态栏上简要显示。

请参阅setTickerText

于 2012-12-22T19:59:52.627 回答