2011-02-14 37 views
6

Mesajlar Etkinliğini açtığınızda ve yeni bir mesaj aldığınızda, durum çubuğunda bir bildirim görüntülenir. Kısa bir süre sonra bildirim kaldırılır.Birkaç saniye sonra bildirimi temizleme

Birkaç saniye sonra bildirimi temizlemek için bir zamanlayıcı kullanmadan etkinliğim için de aynısını yapmak mümkün müdür?

cevap

10

NotificationManager'ı yalnızca bir bildirimi iptal etmek için kullanmanın bir yolu olduğuna inanmıyorum, ancak bunu daha basit bir İşleyici ile yapabilirsiniz. Bildiriminizi yaptıktan hemen sonra bu gibi bir kod koyun.

Handler h = new Handler(); 
long delayInMilliseconds = 5000; 
h.postDelayed(new Runnable() { 
    public void run() { 
     mNotificationManager.cancel(YourNotificationId); 
    } 
}, delayInMilliseconds); 
+0

Kullanım dışı neden Zamanlayıcı yerine Neden İşleyiciyi kullanıyorsunuz? – benshort

+1

Sınıfların iç işleyişini gerçek bir nedene sahip olacak kadar bilmiyorum, bu sadece bir kez işe yarayan bir şeye ihtiyacınız olduğu için sadece içgüdüsel bir şey. Zamanlayıcı bir kez çalıştırmak için kullanılabilir, ancak tekrar tekrar çalıştırmak için de kullanılabilir. İşleyiciyi her zaman söylediğiniz bir zamanda çalışan bir şey olarak düşünürüm ve kullanım durumunuz buydu, bu yüzden bana mantıklı geldi. – Rich

İlgili konular