我已经制作了一个 NotificationView
类来显示接收 SMS
的通知,但是当我点击 Notification
它没有清理并且通知图标保留在通知栏上但是我希望清理它时pl指定了我的一些提示或示例代码如果查询未被清除,请提前感谢或抱歉 . 我标记代码
谢谢
OnReceive
上的 displayNotification
方法 BroadcastReceiver
private void displayNotification(String msg){
Intent i = new Intent(this.context,NotificationView.class);
i.putExtra("ID", ID);
/*i.putExtra("msg",msg);*/
PendingIntent pendInt = PendingIntent.getActivity(context, 0, i, 0);
Notification notif = new Notification(R.drawable.notify,"Receiving SMS",System.currentTimeMillis());
NotificationManager nm = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
notif.setLatestEventInfo(context, "SMS", msg, pendInt);
notif.flags |= Notification.DEFAULT_ALL;
notif.flags |= Notification.DEFAULT_VIBRATE;
notif.flags |= Notification.DEFAULT_LIGHTS;
notif.flags |= Notification.FLAG_AUTO_CANCEL;
notif.ledARGB = Color.WHITE;
notif.ledOnMS = 1500;
notif.ledOffMS = 1500;
nm.notify(ID, notif);
}
这是NotificationView类的代码 .
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.notificationview);
txtNotify = (TextView)findViewById(R.id.txtNotification);
ID = getIntent().getExtras().getInt("ID");
/*txtNotify.setText(getIntent().getExtras().getString("msg"));*/
}
private View.OnClickListener txtClick = new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId()){
case R.id.txtNotification:
NotificationManager nm = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
txtNotify.setText("");
nm.cancel(ID);
nm.cancelAll();
NotificationView.this.startActivity(new Intent(NotificationView.this,ZigbeeActivity.class));
}
}
};
1 回答
为什么在下面的代码中使用管道(“|”)
删除它并检查