Dodawanie akcji onClick do przycisku w powiadomieniu
Próbuję dodać przycisk do powiadomienia za pomocą niestandardowego układu. Udało mi się dodać układ i wyświetlić przycisk. Jednak nadal nie mogę znaleźć sposobu na dodanie nasłuchiwania kliknięć do przycisku. Oto odpowiedni kod, który mam:
Kody, aby dodać niestandardowe powiadomienie układu:
String ns = Context.NOTIFICATION_SERVICE;
mNotificationManager = (NotificationManager) ctx.getSystemService(ns);
CharSequence tickerText = "Quick Application Launcher";
long when = System.currentTimeMillis();
Notification.Builder builder = new Notification.Builder(ctx);
Notification notification=builder.getNotification();
notification.when=when;
notification.tickerText=tickerText;
notification.icon=R.drawable.ic_launcher;
RemoteViews contentView=new RemoteViews(ctx.getPackageName(), R.layout.custom_notification);
Intent volume=new Intent(ctx, NotifActivityHandler.class);
volume.putExtra("DO", "2");
PendingIntent pVolume = PendingIntent.getActivity(ctx, 1, volume, 0);
contentView.setOnClickPendingIntent(R.id.btn2, pVolume);
notification.contentView = contentView;
notification.flags |= Notification.FLAG_ONGOING_EVENT;
mNotificationManager.notify(2345345, notification);
To jest kod NotifActivityHandler:
public class NotifActivityHandler extends Activity {
private NotifActivityHandler ctx;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ctx=this;
String action= (String)getIntent().getExtras().get("DO");
Log.i("LOG", "lauching action: " + action);
if(action.equals("1")){
} else if(action.equals("2")){
} else if(action.equals("config")){
Intent i = new Intent(NotifActivityHandler.this, ConfigActivity.class);
startActivity(i);
}
}
}
Powyższe kody nie generują żadnego dziennika, nawet gdybym go umieściłLog.i
. Nie jestem pewien, co jest z tym nie tak. Każda pomoc jest doceniana.
aktualizacja
Przetestowałem to na urządzeniu ICS.