2012-01-14 17 views
5

Android için bir özel zengin bildirim oluşturdum> = bazı metin ve ek bir düğme gösteren = 3.0. Bildirimi herhangi bir yere tıklarsanız ancak bildirim açılır menüsünde düğmeyi tıklarsanız, bildirim reddedilir, açılır kapanır ve belirtilen amaç beklendiği gibi başlatılır. Bildirimdeki adanmış düğme tıklanırsa, farklı bir Niyet başarıyla başlatılır, ancak açılan menü açık kalır (ve bildirim hala oradadır, ancak daha sonra iptal ederim, sorun değil). Intent, bildirimler açılır menüsünün arkasında görünen bir Etkinliği başlatır.Android'de bildirim açılır menüsünü nasıl kapatılır? = 3.0, ek düğmeyle özel zengin bildirimden nasıl kaldırılır?

Elde etmek istediğim şey, tüm güncel davranışları açıklandığı gibi tutmak, ancak aynı zamanda, düğmenin başlatıldığı Niyet'ten gelen bildirim açılır menüsünü kapatmaktır - bu mümkün mü? Alternatif olarak, Düğme düğmesindeki Etkinlik pencere odağını kazanırsa yeterli olur.

Aşağıda özel bildirim için kod, eğer yardımcı olur:

  Notification.Builder builder = new Notification.Builder(main) 
       .setSmallIcon(R.drawable.notification) 
       .setAutoCancel(true) 
       .setTicker(text) 
       .setContentIntent(...); 

      RemoteViews layout = new RemoteViews(
        main.getPackageName(), R.layout.notification); 
      layout.setTextViewText(R.id.title, title); 
      layout.setTextViewText(R.id.text, text); 
      Intent i = new Intent(
        "snooze", null, main, Snooze.class 
      ); 
      i.putExtra(KEY_WIDGET_ID, widgetId); 
      layout.setOnClickPendingIntent(R.id.notification_zzz, PendingIntent.getActivity(main, 0, i, PendingIntent.FLAG_UPDATE_CURRENT)); 
      builder.setContent(layout); 

      ... 
      NotificationManager nm = 
       (NotificationManager)main.getSystemService(Context.NOTIFICATION_SERVICE); 
      nm.notify(0, builder.getNotification()); 

cevap

2

Android geliştirici çalışma saatleri içinde soruyu sordu: http://www.youtube.com/watch?v=XvLBvdml_Fs (soru 49:10 başlayarak)

cevap oldu, Bu mümkün değil ve bunu bile yapmamalıyım ki, ki bu sorularım. Bildirimlerin başka eylemler artık içerebilir olarak bu mümkün Android 4.1 ile başlayarak : http://code.google.com/p/android/issues/detail?id=24762

DÜZENLEME 08-10-12: Ben bir özellik isteği oluşturduk nedeni budur. Daha fazla bilgi için aşağıdaki sayfaya bakın: https://developer.android.com/about/versions/android-4.1.html#UI

+0

Bu sorunu çözdünüz mü yoksa uygulama tasarımını değiştirdiniz mi? – Hunt

+1

Android 3.0 ila 4.0 için bir çözüm bulamadım. Fakat yukarıda Android 4.1 ve yukarda bahsedildiği gibi, açılır kapanışı da kapatan ek eylemler için yerleşik bir mekanizma var ve bu benim kullandığım şey. Daha fazla bilgiyi burada bulabilirsiniz: http://developer.android.com/guide/topics/ui/notifiers/notifications.html#Actions – mdiener

İlgili konular