对通知的标准短按会触发其中包含的 PendingIntent。
是否可以捕捉其他事件?
要求是抓住长按。
尽管您可以使用NotificationCompat和RemoteViews创建自定义通知视图,但您无法操纵底层的点击行为。您唯一的选择是更改少数 ViewType 的一些参数:
因此,回答您的问题:不,使用最新的 Google API(api lvl 17 - 14.01.2013),您不能将 onLongClickListener 插入通知中的任何视图元素中。
为什么会这样?
RemoteView 只是 View 的简化、更简单的派生。它甚至与 View 无关(RemoteView 扩展 Object),因此不提供您在真实 View 中拥有的所有选项(View.setOnLongClickListener())。
什么是远程视图?:
RemoteView 可以由具有与原始应用程序相同权限的另一个进程执行(这就是它们被称为远程视图的原因)。通过这种方式,小部件和通知以其定义应用程序的权限运行。
从 ICS 开始,长按通知会触发“应用程序信息”选项,因此您可以查看哪个应用程序正在发送它(有助于识别垃圾邮件应用程序)此外,从 JellyBean 开始,您已经丰富了通知,可以让您做很多事情,包括多个动作,也许你可以用它来解决你的问题。
沙拉菲
如果您想了解更多信息,我推荐这些文章:
就像一个应用小部件,它是一个远程视图,它只支持点击和垂直拖动手势