3

Androidの設計ガイドラインが示唆しているように、Androidの通知にタイムスタンプを表示したいと思います。(最初のスナップショットを参照してください。「12:03PM」が欲しいです!)。

いろいろな方法を試してみ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());

通知にカスタムレイアウトを使用したくありません。

4

2 に答える 2

1

自分で答えを見つけたと思いますが、whenAndroid4.0でしか表示されないようです。3以降。妻のNexusS(4.0.3)に表示され、4.0にアップグレードしました。私のギャラクシーネクサスの4とそれは魔法のように働き始めました!

古いバージョン(たとえば2.3)でも表示されますが、4.0では表示されません。2

于 2012-05-19T14:37:31.190 に答える
0

日付を文字列として使用setContentInfoして渡します。

このリンクから

public Notification.Builder setContentInfo(CharSequence info)以降:APIレベル11

通知の右側に大きなテキストを設定します。

通知の右側にある大きなテキストは、時間を入れたい場所にあるはずです。

また、同じリンクから:

public Notification.Builder setWhen(long when)Since:APIレベル11

イベントが発生した時刻を設定します。パネル内の通知は、この時間でソートされています。

つまりsetWhen、通知を並べ替えるだけで、テキストは設定されません。

于 2012-05-17T23:18:37.693 に答える