RemoteViews中的setxxx方法 
比如setCharSequence(int viewId, String methodName, CharSequence value); 
views.setString(R.id.textview01, "setText", battery + "%"); 
其中views是RomoteViews的实例, 
第一个参数就是ID了, 
第二个参数,是一个方法名字,比如这里是textView,那么textView会有很多方法,比如setBackground(), setText(), setTextColor()等等,第二个参数就填这个函数名,不要括号, 
第三个参数就填第二个函数所用到的参数,比如如果是setTextColor(int), 第三个参数就带int进去(当然如果是这个你就必须用views.setInt(...)这个函数)

【以下是转载】 
RemoteViews 类描述了一个View对象能够显示在其他进程中,可以融合从一个 layout资源文件实现布局。虽然该类在android.widget.RemoteViews而不是appWidget下面但在Android Widgets开发中会经常用到它,主要是可以跨进程调用(appWidget由一个服务宿主来统一运行的)。

如何实例化一个RemoteViews

构造方法 
RemoteViews(String packageName, int layoutId) 
创建一个新的RemoteViews 对象将显示 views包含指定一个layout资源. 
RemoteViews(Parcel parcel) 
读取RemoteViews对象从一个parcel中.

首先给大家一段例子简单说明下构造和如何使用

RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.appwidget_provider); 
     views.setTextViewText(R.id.appwidget_text, "Android开发网欢迎您");

appWidgetManager.updateAppWidget(appWidgetId, views);

详细的 该类的公共方法列表,下面的viewId为layout文件中的id定义,常用的方法已经翻译成中文描述。

Public Methods 
View apply(Context context, ViewGroup parent) 
Inflates the view hierarchy represented by this object and applies all of the actions. 
int describeContents() 
Describe the kinds of special objects contained in this Parcelable's marshalled representation. 
int getLayoutId() 
String getPackage() 
boolean onLoadClass(Class clazz) 
Hook to allow clients of the LayoutInflater to restrict the set of Views that are allowed to be inflated. 
void reapply(Context context, View v) 
Applies all of the actions to the provided view. 
void setBitmap(int viewId, String methodName, Bitmap value) 
Call a method taking one Bitmap on a view in the layout for this RemoteViews. 
void setBoolean(int viewId, String methodName, boolean value) 
Call a method taking one boolean on a view in the layout for this RemoteViews. 
void setByte(int viewId, String methodName, byte value) 
Call a method taking one byte on a view in the layout for this RemoteViews. 
void setChar(int viewId, String methodName, char value) 
Call a method taking one char on a view in the layout for this RemoteViews. 
void setCharSequence(int viewId, String methodName, CharSequence value) 
Call a method taking one CharSequence on a view in the layout for this RemoteViews. 
void setChronometer(int viewId, long base, String format, boolean started) 
Equivalent to calling Chronometer.setBase, Chronometer.setFormat, and Chronometer.start() or Chronometer.stop(). 
void setDouble(int viewId, String methodName, double value) 
Call a method taking one double on a view in the layout for this RemoteViews. 
void setFloat(int viewId, String methodName, float value) 
Call a method taking one float on a view in the layout for this RemoteViews. 
void setImageViewBitmap(int viewId, Bitmap bitmap) 
等同于调用ImageView.setImageBitmap方法,从Bitmap对象中设置一个图片 
void setImageViewResource(int viewId, int srcId) 
等同于调用ImageView.setImageResource,从一个资源中设置图片 
void setImageViewUri(int viewId, Uri uri) 
等同于调用ImageView.setImageURI,从URI中设置图像 
void setInt(int viewId, String methodName, int value) 
Call a method taking one int on a view in the layout for this RemoteViews. 
void setLong(int viewId, String methodName, long value) 
Call a method taking one long on a view in the layout for this RemoteViews. 
void setOnClickPendingIntent(int viewId, PendingIntent pendingIntent) 
Equivalent to calling setOnClickListener(android.view.View.OnClickListener) to launch the provided PendingIntent. 
void setProgressBar(int viewId, int max, int progress, boolean indeterminate) 
等同于调用ProgressBar.setMax, ProgressBar.setProgress, and ProgressBar.如果indeterminate为true则进度条的最大和最小进度将会忽略 
void setShort(int viewId, String methodName, short value) 
Call a method taking one short on a view in the layout for this RemoteViews. 
void setString(int viewId, String methodName, String value) 
Call a method taking one String on a view in the layout for this RemoteViews. 
void setTextColor(int viewId, int color) 
等同于setTextColor(int).,设置文本的颜色 
void setTextViewText(int viewId, CharSequence text) 
等同于TextView.setText,设置文本内容 
void setUri(int viewId, String methodName, Uri value) 
Call a method taking one Uri on a view in the layout for this RemoteViews. 
void setViewVisibility(int viewId, int visibility) 
等同于调用View.setVisibility,设置该ID控件的可见性 
void writeToParcel(Parcel dest, int flags)

Flatten this object in to a Parcel.

原文地址:http://hi.baidu.com/liujianzhang85/item/7aaee2fa78a6df0de2e3bdd6

RemoteViews的使用相关推荐

  1. View - RemoteViews

    设计Android的工程师起名字还是挺规范的,而且一眼就知道是什么意思.RemoteViews,顾名思义,远程的View.Android为了能让进程A显示进程B的View,设计了这么一种View(其实 ...

  2. android remoteviews 设置背景,Android通过RemoteViews实现跨进程更新UI示例

    一.概述 前面一篇文章Android通过AIDL实现跨进程更新UI我们学习了aidl跨进程更新ui,这种传统方式实现跨进程更新UI是可行的,但有以下弊端: View中的方法数比较多,在IPC中需要增加 ...

  3. Android 之窗口小部件高级篇--App Widget 之 RemoteViews - 跨到对岸去

    在之前的一篇博文( Android 之窗口小部件详解--App Widge t)中,已经介绍了App Widget的基本用法和简单实例.这篇主要讲解 App Widget 的高级内容,即通过 Remo ...

  4. Widget创建过程(将RemoteViews发给WidgetHost)

    创建Widget过程 (1)分配id(用HostId请求分配WidgetId:WidgetHost.allocateAppWidgetId:由WidgetService分配一个WidgetID) Wi ...

  5. Android Notification 手机系统横幅弹出提示框调用,横幅通知,RemoteViews使用实例

    直接上代码 :bundle是极光推送的bundle @Override public void onReceive(Context context, Intent intent) {try {Bund ...

  6. 完全理解Android中的RemoteViews

    一.什么是RemoteViews RemoteViews翻译过来就是远程视图.顾名思义,RemoteViews不是当前进程的View,是属于SystemServer进程.应用程序与RemoteView ...

  7. 《android开发艺术探索》读书笔记(五)--RemoteViews

    接上篇<android开发艺术探索>读书笔记(四)--View工作原理 No1: RemoteViews使用场景:通知栏和桌面小部件 No2: 通知栏主要通过NotificationMan ...

  8. android通知背景色,android – 更改通知RemoteViews背景颜色

    我在使用Application-Theme更改Background-Color时遇到问题. NotificationCompat.Builder nBuilder = new Notification ...

  9. 【Android开发艺术探索】RemoteViews

    RemoteViews表示的是一个View结构,它可以在其他进程中显示.RemoteViews在Android中的使用场景有两种:通知栏和桌面小部件. 1.RemoteViews的应用 RemoteV ...

  10. Android基础之RemoteViews

    一.简介 RemoteViews是一种远程View,可以在其他进程中显示,为了能够更新它的界面,RemoteViews提供了一组基础操作用于跨进程更新它的界面. RemoteViews常用在通知和桌面 ...

最新文章

  1. 【swjtu】数据结构实验课程设计_图的关键路径
  2. UIViewController生命周期
  3. tbb flow graph node types
  4. mac mysql 重设密码_Mac下忘记mysql密码重新设置密码的图文教程
  5. 3.14 01串排序
  6. linux强制停止压缩任务,6.25任务(linux压缩、打包命令:zip、tar)
  7. linux入门_linux入门-常用命令的使用
  8. 计算机专业毕设外文翻译springboot_java毕业设计_springboot框架的计算机系党员信息管理系统...
  9. 下拉刷新和上拉加载更多
  10. Mysql 中的SSL 连接
  11. Cygwin的进程管理
  12. 淘富成真,硬件智能—— 硬件创新一站赋能平台
  13. java百度地图离线LBS_百度地图之离线下载功能
  14. SPSS数据转换插件v2.0
  15. 硬盘img镜像备份工具
  16. 中期答辩记录与总结反思
  17. 【问题】myeclipse启动时Tocmat错误:cound not create the view :An unexpencted expetion was thrown
  18. 路飞学城Python-Day13
  19. 对话系统调查:近期进展与新前沿
  20. HTML+CSS一篇文章搞定

热门文章

  1. linux云主机安全加固
  2. 【转载】Visual Studio 2017各版本安装包离线下载、安装全解析
  3. 致远SPM国资企业解决方案之工会管理
  4. java实现ip首部校验和算法,理解传输层中UDP协议首部校验和以及校验和计算方法的Java实现...
  5. 以数字驱动未来,望美实业携手华为开启数字化转型新征程
  6. 简单理解什么是虚拟存储器
  7. Stream流练习题大全以及答案
  8. DBA 职业迷茫何去何从
  9. fake news:使用区块链技术来保证新闻中数字媒体的真实性。
  10. ffmpeg vsync参数分析