2012-01-30 2 views
1

질문이 있습니다. 상태 표시 줄에 알림을 보내려고합니다. 그러나 그것을 클릭하면, 그냥 지우고 의도를 시작하지 않습니다. 어떻게해야합니까?알림을 사용하는 방법을 클릭했을 때만 지워지고 다른 것은하지 않습니다.

Intent intent; 
intent= new Intent(myclass.this, myclass.class); 
PendingIntent pi = PendingIntent.getActivity(myclass.this, 0, intent, 0); 
String body = "This is a test message"; 
String title = "test msg"; 
Notification n = new Notification(R.drawable.ic_launcher, body,System.currentTimeMillis()); 
n.setLatestEventInfo(myclass.this, title, body, pi); 
n.defaults = Notification.DEFAULT_ALL; 
nm.notify(uniqueID, n); 

이 코드를 사용하면 알림이 발생하고이를 클릭하면 새로운 의도가 만들어져 표시됩니다. 나는 새로운 의도를 만들고 싶지 않습니다. 알림을 지우십시오. 공식 문서에서

답변

1

패스

PendingIntent.getActivity(context, 0, null, PendingIntent. FLAG_ONE_SHOT) 
n.flags |= Notification.FLAG_AUTO_CANCEL; // just like that teoRetik says 
+0

내 값 null 값으로 내 앱이 알림에 작동하지 않습니다. 강제로 닫으십시오 – aTa

+0

죄송합니다 내 대답을 업데이트 –

+0

감사합니다 vikram. 나는 이것을한다. 인 텐트 (ok)를 만들지는 않지만 알림을 클릭 한 후 알림이 닫히지 않습니다. 항상 알림 표시 줄에 계속 표시됩니다. – aTa

1

: 사용자가 알림 창을 선택할 때

이 상태 표시 줄 알림을 취소하려면 알림에 "FLAG_AUTO_CANCEL"플래그를 추가합니다. cancel (int)를 사용하여 수동으로 지울 수도 있고 알림 ID를 전달하거나 cancelAll()을 사용하여 모든 알림을 지울 수 있습니다. 당신이 그런 식으로 설정할 필요가 있기 때문에

+0

입니다 :'n.flags | = Notification.FLAG_AUTO_CANCEL;'. 편집 됨. – teoREtik

+0

나는이 플래그를 다음 코드로 설정하지만 알림을 클릭하여 새로운 의도를 만들고 점심을 먹을 때 여전히 작동하지 않습니다. 코드 : n.defaults = Notification.FLAG_AUTO_CANCEL; – aTa

관련 문제