自定义 noticfiction 内button点击事件

近期工作涉及到状态栏的功能开发,今天功能开发完毕,总结一下发现的问题。

功能需求:很简单就是在状态栏的消息中添加button并相应button事件

问题 1:状态栏容量问题
在4.1版本之前 内容的高度为64dp 通用视图如下

1:内容标题
2:大图标
3:内容
4:内容信息
5: 小图标
6:通知被使用的时间

在4.1及其更高的版本 支持超大容量 最大高度为 256dp 超大视图如下

7:超大内容区域,内容可以是 Big picture style,Big text style,Inbox style,Big content title和Summary text。
(注意:通过RemoteView自定义内容时,高度为64dp,超大内容只能使用系统默认布局)

问题 2:自定义控件中按钮单击事件的相应问题
通过RemoteView自定义控件内容,通过 setOnClickPendingIntent(viewId, pendingIntent)设置单击事件,viewId:获取单击事件的控件id ,pendingIntent:单击后处理的消息。
注意:
android 3.1 之前的版本不支持自定义控件中控件的点击事件,及点击控件无效,只能相应notification的默认处理。
android 3.1 到 4.0之间的版本可以处理自定义控件中的控件的单击事件,但是单击后展开的状态栏不能够自动收起,影响用户体验。
android 4.0 及更高版本,可以很好的相应自定义控件中的控件单击事件,并自动收起状态栏。

猜你喜欢

转载自zjingye.iteye.com/blog/1987949