单击通知后,Android通知不会消失

Flo*_*Flo 127 notifications android

如果我想在通知栏中显示通知问题.虽然我将通知标志设置为通知,Notification.DEFAULT_LIGHTS & Notification.FLAG_AUTO_CANCEL但在单击后不会消失.我有什么想法我做错了吗?

NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);

    int icon = R.drawable.icon;
    CharSequence tickerText = "Ticker Text";
    long time = System.currentTimeMillis();

    Notification notification = new Notification(icon, tickerText, time);
    notification.flags = Notification.DEFAULT_LIGHTS & Notification.FLAG_AUTO_CANCEL; 

    Context context = getApplicationContext();
    CharSequence contentTitle = "Title";
    CharSequence contentText = "Text";
    Intent notificationIntent = new Intent(this, SilentFlipConfiguration.class);
    PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
    notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
    mNotificationManager.notify(1,notification);
Run Code Online (Sandbox Code Playgroud)

Kam*_*nek 292

同时建立NotificationNotificationBuilder可以使用notificationBuilder.setAutoCancel(true);.

  • 这个答案应该被接受,它更符合当前的android设计原则 (9认同)
  • `notificationBuilder.setAutoCancel(true);`对我来说不起作用.我应该提出我的待定意图吗? (5认同)
  • 那么,使用Notification`mNotificationManager.notify(1,notification);和使用NotificationBuilder`mNotificationManager.notify(1,mBuilder.build())来创建通知的差异是什么?`?谢谢. (2认同)

syn*_*nic 129

notification.flags = Notification.DEFAULT_LIGHTS | Notification.FLAG_AUTO_CANCEL
Run Code Online (Sandbox Code Playgroud)

从文档:

如果在用户单击通知时应取消通知,则应将位置按位编入标志字段

  • 这不是正确的答案.`Notification.DEFAULT_LIGHTS`是`Notification.defaults`类的一部分,而不是`Notification.flags`类.请参阅我的答案,了解相应的制定者. (3认同)

Dar*_*rcy 27

// Uses the default lighting scheme
notification.defaults |= Notification.DEFAULT_LIGHTS;

// Will show lights and make the notification disappear when the presses it
notification.flags |= Notification.FLAG_AUTO_CANCEL | Notification.FLAG_SHOW_LIGHTS;
Run Code Online (Sandbox Code Playgroud)


art*_*s90 13

2016状态:你可以使用mBuilder.setAutoCancel(true).

资料来源:https://developer.android.com/reference/android/app/Notification.Builder.html