完全理解顶峰APP开发Android系列中的RemoteViews

完全理解顶峰APP开发Android系列中的RemoteViews

ID:40932254

大小:51.50 KB

页数:7页

时间:2019-08-11

完全理解顶峰APP开发Android系列中的RemoteViews_第1页
完全理解顶峰APP开发Android系列中的RemoteViews_第2页
完全理解顶峰APP开发Android系列中的RemoteViews_第3页
完全理解顶峰APP开发Android系列中的RemoteViews_第4页
完全理解顶峰APP开发Android系列中的RemoteViews_第5页
资源描述:

《完全理解顶峰APP开发Android系列中的RemoteViews》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、完全理解顶峰APP开发Android系列中的RemoteViews一、什么是RemoteViewsRemoteViews翻译过来就是远程视图.顾名思义,RemoteViews不是当前进程的View,是属于SystemServer进程.应用程序与RemoteViews之间依赖Binder实现了进程间通信.二、RemoteViews的用法RemoteViews使用最多的场合是通知栏和桌面小插件.以通知栏为例,讲解下它的用法.1、新建一个Notification这里要注意是在android3.0之前都是使用如下的形式构建一个Notifica

2、tion//1.新建一个Notification对象NotificationmNotification=newNotification();//2.添加属性,比如标题、内容、优先级、图片等mNotification.tickerText="这是通知栏的标题";mNotification.icon=R.drawable.ic_launcher;mNotification.flags=Notification.FLAG_NO_CLEAR;mNotification.setLatestEventInfo(this,"这是内容","这是标题"

3、,null);在3.0之后官方推荐使用建造者模式创建Notification.NotificationmNotification=newNotification.Builder(this).setContentTitle("这是标题").setContentText("这是内容").setSmallIcon(R.drawable.ic_launcher).build();Notification有很多属性,这里列举一些-setContentTitle设置标题-setContentText设置内容-setLargeIcon设置通知栏大图

4、标-setSmallIcon设置通知栏小图标-setContent设置RemoteViews-setContentIntent当通知条目被点击,就执行这个被设置的Intent.-setDeleteIntent当用户点击"ClearAllNotifications"按钮区删除所有的通知的时候,这个被设置的Intent被执行-setLights设置闪光灯-setSound设置声音-setPriority设置优先级2、设置Notification的RemoteViews如果要给通知栏使用自定义布局就要使用RemoteViews了,传入包名和

5、相应的布局.RemoteViewsmRemoteViews=newRemoteViews("com.example.remoteviewdemo",R.layout.remoteview_layout);然后通过setContent()传入RemoteViews对象即可.这里顺便讲一下PendingIntent,PendingIntent是”延迟意图”的意思,就是当满足某一条件时出触发这个Intent.通过PendingIntent的getActivity、getBroadcast、getService等分别构建一个打开对应组件的延迟

6、Intent.传入四个参数,context、intent、requestCode(自定义)、flag.Intentintent=newIntent(MainActivity.this,MainActivity.class);PendingIntentmPendingIntent=PendingIntent.getActivity(MainActivity.this,0,intent,PendingIntent.FLAG_UPDATE_CURRENT);PendingIntent有4种flag.-FLAG_ONE_SHOT只执行一次-F

7、LAG_NO_CREATE若描述的Intent不存在则返回NULL值-FLAG_CANCEL_CURRENT如果描述的PendingIntent已经存在,则在产生新的Intent之前会先取消掉当前的-FLAG_UPDATE_CURRENT总是执行,这个flag用的最多3、获取通知管理者NotificationManagermanager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);4、弹出通知调用notify方法,传入一个id(自定义)和通知实

8、例即可.manager.notify(1,mNotification);5、例子我用一个按钮弹出通知,点击这个通知时进入到该ActivitypublicclassMainActivityextendsActivity{p

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。