【发布时间】:2015-09-22 08:18:11
【问题描述】:
我正在尝试创建一个带有取消按钮的通知,但是当我点击它时没有任何反应。这是我的代码:
private NotificationCompat.Builder notificationBuilder;
public void createNotification() {
notificationBuilder = new NotificationCompat.Builder(service);
notificationBuilder.setProgress(100, 0, false);
notificationBuilder.setAutoCancel(true);
Intent intent = OrderProcessingService_.intent(service).actionCancelUpload(basket.getPhotobook_id()).get();
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
PendingIntent pendingIntent = PendingIntent.getService(service, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT);
notificationBuilder.setContentIntent(pendingIntent);
notificationBuilder.setSmallIcon(R.drawable.ic_action_file_cloud_upload);
NotificationCompat.Action cancelAction = new NotificationCompat.Action(R.drawable.ic_action_navigation_close, service.getString(R.string.cancel_upload), pendingIntent);
notificationBuilder.setContentTitle(service.getString(R.string.notification_upload_title));
notificationBuilder.setContentText(service.getString(R.string.notification_uploading_subtext, Util.getTitle(basket.getPhotobook())));
notificationBuilder.addAction(cancelAction);
addBigPicture(notificationBuilder);
service.startForeground(1, notificationBuilder.build());
}
【问题讨论】:
-
更改此行 notificationBuilder.addAction(cancelAction);到 notificationBuilder.setDeleteIntent(cancelAction);告诉我你得到了什么
-
如果更改notificationBuilder.addAction(cancelAction);到 notificationBuilder.setDeleteIntent(cancelAction);我没有取消按钮了。而且我没有向按钮添加 onClick() 事件,我认为标志 autoCancel = true 没有必要。
-
对不起,我已经编辑了我的问题,因为我没有包含最后一行。我认为问题是通知是取消但在前台,意图仍在工作,我如何在取消按钮时调用 stopForeground被点击了??
标签: android android-notifications