Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is it possible to add onclick listeners to remoteviews in android

I have created a notification method as shown below:

NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
    Notification notification;

        notification = new Notification(R.drawable.messageicon, "You have a new message",
                System.currentTimeMillis());
        notification.flags |= Notification.FLAG_AUTO_CANCEL;

        RemoteViews view = new RemoteViews(getPackageName(), R.layout.notification);
        view.setImageViewResource(R.id.image, R.drawable.ic_launcher);
        view.setTextViewText(R.id.title, "New Message");
        view.setTextViewText(R.id.text, message);
        notification.contentView = view;
        Intent intent = new Intent();
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
        PendingIntent activity = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT);
        notification.contentIntent = activity;
        notificationManager.notify(0, notification);

I want to add a button on status bar and on click of the button a pop-up should be displayed. Any help would be highly appreciated.

like image 969
sharry Avatar asked Sep 05 '12 15:09

sharry


1 Answers

You can't do directly, but you can use RemoteViews.setOnClickPendingIntent(int viewId, PendingIntent pendingIntent).

If you want to call the same Activity on all buttons onClick events, make sure you add a Intent.setAction(String action) with a different string so the system do not merge all intents in only one for all buttons.

Then theme your Activity as a Dialog and you'll have a popup.

like image 174
rgrocha Avatar answered Sep 19 '22 12:09

rgrocha