Android 开发艺术探索 读书笔记5

第五章、理解RemoteViews

RemoteViews表示的是一个View结构,他可以在其他进程中显示。他提供了一种基础操作用于跨进程更新它的界面。

使用场景:1.通知栏和桌面小部件

一,应用

 1.通知栏p234

 2.桌面小部件的应用

开发步骤:1.定义小部件界面,在res/layout/下面建一个xml文件。2.定义小部件配置信息在res/layout下新建一个xml文件添加以下内容


3.定义小部件的实现类继承AppWidgetProvider

4.在AndroidManifest.xml中声明小部件,注册广播receiver并添加两个action


3.pendingIntent概述

pendingIntent在将来某个不确定的时刻,Intent表示立即发生。典型使用场景是给RemoteViews添加单击事件

 支持三种特定用途;启动Activity getActivity(context,requestCode,intent,flags),启动service getService(同上),发送广播 getBroadcast(同上)

匹配规则:intent相同,requestCode也相同;intent相同:ComponentName和intent-filter相同。

第四个参数FLAG_ONE_SHOT:PendingIntent只能使用一次;FLAG_NO_CREATE:描述当前pendingintent不会主动创建,没有太大意义。FLAG_CANCEL_CURRENT:如果已经存在,都会被cancle,然后创建新的,被cancle的消息单击后无法打开。FLAG_UPDATE_CURRENT:如果已经存在,都会被更新,即他们的Intent中的Extras会被替换成最新的。

二、RemoteViews的内部机制

所支持的View类型:AnalogClock,Button,Chronometer,ImageButton,ImageView,ProgressBar,TextView,ViewFlipper,ListView,GridView,StackView,AdapterViewFlipper,ViewStub

所支持的Layout:FrameLayout,LinearLayout,RelativeLayout,GridLayout

不支持其他子类或者其他View,也无法使用自定义View










评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值