我想在Android通知中显示时间戳,就像Android Design Guidelines suggest.一样(请参阅第一个快照,“12:03 PM”就是我想要的!)。
我尝试了许多不同的方法,我认为setWhen
会这样做,但它似乎只会影响通知托盘中的排序。知道如何实现这个目标吗?
请参阅下面的代码:
Notification.Builder builder = new Notification.Builder(context);
builder.setContentIntent(pendingIntent)
.setSmallIcon(R.drawable.ic_notify)
.setLargeIcon(largeIcon)
.setTicker(text)
.setNumber(unreadCount)
.setWhen((new Date()).getTime())
.setAutoCancel(true)
.setContentTitle(title)
.setContentText(text)
.setDefaults(Notification.DEFAULT_VIBRATE);
notificationManager.notify(NOTIFICATION_ID, builder.getNotification());
我不想为通知使用自定义布局。
答案 0 :(得分:1)
我想我自己找到了答案,when
似乎只在Android 4.0上显示。 3 以及之后。
我妻子的Nexus S(4.0.3)显示了它,我刚刚在我的Galaxy Nexus上升级到4.0。 4 它神奇地开始工作了!
它也显示在旧版本(例如2.3)上,但不显示在4.0上。 2 !
答案 1 :(得分:0)
使用setContentInfo
并将日期作为字符串传递给它。
来自this链接
public Notification.Builder setContentInfo(CharSequence info)自:API Level 11
在通知的右侧设置大文本。
通知右侧的大文字应该是您想要投入时间的地方。
同样来自同一个链接:
public Notification.Builder setWhen(long when)自:API Level 11
设置事件发生的时间。面板中的通知是 按此时间排序。
表示setWhen
仅对通知进行排序,并且不设置任何文本。