Android. Handling button clicks in the statusbar
How can I handle clicking on the "apps" button?
Custom_notification.xml:
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="apps"
android:onClick="notification_apps"
android:id="@+id/notification_apps"/>
Notification.java:
public class Notification {
private static Context context;
public static void setContext(Context _context) {
Notification.context = _context;
}
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
public static void runNotification(){
RemoteViews contentView = new RemoteViews(context.getPackageName(), R.layout.custom_notification);
//contentView.setRemoteAdapter(R.id.notification_apps, new Intent(context, HomeActivity.class));
// Create an Intent to launch ExampleActivity
Intent intent = new Intent(context, HomeActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
// Get the layout for the App Widget and attach an on-click listener
contentView.setOnClickPendingIntent(R.id.notification_apps, pendingIntent);
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(context);
mBuilder.setOngoing(true);
mBuilder.setSmallIcon(R.drawable.home);
mBuilder.setContent(contentView);
Intent resultIntent = new Intent(context, HomeActivity.class);
TaskStackBuilder stackBuilder = TaskStackBuilder.create(context);
stackBuilder.addParentStack(HomeActivity.class);
stackBuilder.addNextIntent(resultIntent);
PendingIntent resultPendingIntent = stackBuilder.getPendingIntent(0,PendingIntent.FLAG_UPDATE_CURRENT);
mBuilder.setContentIntent(resultPendingIntent);
NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(0, mBuilder.build());
}
}
HomeActivity.java:
public class HomeActivity extends Activity{
//....
public void notification_apps(View view) {
Intent i = new Intent(HomeActivity.this, AppsListActivity.class);
startActivity(i);
}
}
0
Author: Pavel Stankevich, 2015-12-04
2 answers
In custom_notification.xml removed it:
android:onClick="notification_apps"
And in HomeActivity, I removed the click processing, and everything worked!
1
Author: Pavel Stankevich, 2015-12-05 11:14:02
Describe the problem in the accompanying code. Otherwise, people will minusovat you, and you will not get an answer to your question.
Most likely, you put this View
with RemoteViews
.
To hang an event handler on a button from your custom View you need the following:
remoteViews.setOnClickPendingIntent();
0
Author: Joe Silent, 2015-12-04 23:10:29