缥帙各舒散,前后互相逾。这篇文章主要讲述Android:以编程方式向通知添加按钮相关的知识,希望能为你提供帮助。
我正在尝试以编程方式将Imagebuttons添加到通知中,但我找不到工作方法。我知道这是可能的,因为我看到了similar app
这是我构建通知的方式:
public class MyNotification extends Notification {
private Context ctx;
public Context getCtx() {
return ctx;
}private NotificationManager mNotificationManager;
public MyNotification(Context ctx, int layout_id) {
super();
this.ctx = ctx;
String ns = Context.NOTIFICATION_SERVICE;
mNotificationManager = (NotificationManager) ctx.getSystemService(ns);
CharSequence tickerText = "Shortcuts";
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(), layout_id);
//set button listners
setListeners(contentView);
notification.contentView = contentView;
notification.flags |= Notification.FLAG_ONGOING_EVENT;
mNotificationManager.notify(1387, notification);
}
以及我如何尝试添加ImageButton
RemoteViews button = new RemoteViews(ctx.getPackageName(), R.layout.image_btn_layout_test);
Intent actionIntent = new Intent("MyIntent");
PendingIntent pendingIntent = PendingIntent.getBroadcast(ctx, 0, actionIntent, 0);
button.setOnClickPendingIntent(R.id.image, pendingIntent);
contentView.addView(R.layout.noti_layout, button);
答案阅读以下问题:
【Android(以编程方式向通知添加按钮)】How to add button to notifications in android? Adding button action in custom notification Handling buttons inside android notifications
另请参阅Notification Actions开发人员指南。
此外,看起来在创建通知后您无法添加操作,因此您应该使用指定的操作创建新通知,然后替换之前的通知(为您的通知分配ID)。
推荐阅读
- Android,从“最近的应用”中删除应用时取消通知
- 自定义android通知背景
- 单击firebase的通知时,在设备的浏览器中打开URL而不直接到App
- 如何在Windows中使用Open ALPR(自动车牌识别)从图像中识别车辆牌照
- 如何使用PHP最小化Javascript和CSS
- 如何更改NetBeans 8.2代码模板的默认@author值
- 如何在Composer中要求PEAR软件包
- 如何在Plesk中使用composer(使用其他版本的PHP运行Composer)
- 如何解决Cygwin终端错误(无法派生子进程:没有可用的终端(-1))