`
modabobo
  • 浏览: 502248 次
文章分类
社区版块
存档分类
最新评论

(转)Android之RemoteViews

 
阅读更多

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://blog.csdn.net/zeng622peng/article/details/6186305

分享到:
评论

相关推荐

    Android-remoteviews自定义通知适配android8.0okhttp断点下载

    remoteviews 自定义通知,适配android8.0 ,okhttp断点下载

    Android 关于RemoteViews的理解(一)

    谷歌设计这个View的主要目的是为了跨进程更新界面,基于这个前提我们在Android设备上这用得到RemoteViews的应用场景主要有两个地方:通知栏和桌面小部件,我打算用三篇文章去了解RemoteViews,第一篇介绍RemoteViews...

    Android通过RemoteViews实现跨进程更新UI示例

    本篇文章主要介绍了Android通过RemoteViews实现跨进程更新UI示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    RemoteViews实例

    根据http://blog.csdn.net/wrg_20100512/article/details/53940485写的DEMO,需要的可以下载

    Android通过AIDL实现跨进程更新UI

    Android通过AIDL实现跨进程更新UI csdn博客地址:http://blog.csdn.net/chenzheng8975/article/details/54964345

    Android开发艺术探索.任玉刚(带详细书签).pdf

    本书是一本Android进阶类书籍,采用理论、源码和实践相结合的方式来阐述高水准的Android应用开发要点。本书从三个方面来组织内容。... 15.2 内存泄露分析之MAT工具 502 15.3 提高程序的可维护性 506

    Android天气预报widget的设计与实现毕业论文

    5.2 REMOTEVIEWS的局限 34 5.3 在WIDGET中显示图片 35 5.4 在ANDROIDMANIFEST.XML中进行权限声明 35 5.5 为WIDGET中的按钮设置ONCLICK事件 36 5.6 利用BUNDLE实现消息的传递 37 5.7 在APPWIDGETPROVIDER类中获取...

    Android开发艺术探索

    《Android开发艺术探索》是一本Android进阶类书籍,采用理论、源码和实践相结合的方式来阐述高水准的Android应用开发要点。... 15.2 内存泄露分析之MAT工具 / 502  15.3 提高程序的可维护性 / 506

    android AppWidget ListView

    android app widget 使用listview 源码

    Android_Widget开发实例-电量监控

    一个简单的电量监控代码可以很好的演示Android平台下Widget开发中的基础方式,比如appWidget如何于Service交互以及RemoteViews的演示。完成的工程代码我们稍作美化后提供下载,同时下次开始我们提供一些国外比较优秀...

    Android网络音乐播放器 源码下载

    该android音乐播放器支持以下功能: 1.本地音乐的播放控制; 2.音乐的收藏和取消收藏; 3.网络音乐的搜索和下载; 4.下载的控制-暂停/继续/删除/断点下载; 5.音乐列表刷新-下载完成后刷新可以看到新增歌曲; 6.播放...

    android框架与应用开发介绍.ppt

    界面类是RemoteViews而不是View或ViewGroup 只支持少数布局和控件 布局:LinearLayout, FrameLayout, RelativeLayout 控件:button, TextView, ImageView, ImageButton, ProgressBar, AnalogClock, Chronometer(类似...

    android-widget-in-delphi-app-build:POC,用于将Android主屏幕小部件添加到使用Delphi(柏林)构建的Android应用中

    Delphi中的当前版本可以在不崩溃的情况下运行窗口小部件,但是无法加载通过窗口小部件代码中通过RemoteViews对象进行更新的TextView。 要测试项目在哪里进行,请运行Delphi项目并进行调试以编译到设备。 这会将App...

    widget小组件demo

    android widget小组件,widget 和app界面通过广播,服务(service),RemoteViews 交互

    TransLoc-Android-Widget:用于TransLoc总线跟踪的Android小部件应用程序

    TransLoc小部件 一个简单的Android小部件应用程序,用于在Android主屏幕上查看公交... 转到TransLocWidget / gradle.properties_UPDATEME并添加API密钥 将gradle.properties_UPDATEME重命名为gradle.properties 将项目

    android app widget 介绍

    App Widget 的概念 一个简单的App Widget例子 PendingIntent的使用 RemoteViews的使用 接收来自App Widget的广播 更新App Widget的控件状态

    ViewPager的setOnPageChangeListener方法详解

    网上找了找代码,解决方案就是通过RemoteViews来实现。但是在实现过程中遇到不少问题,网上也没有很好的文章描述这些问题,所以在这里做个总结,希望大家能少走点弯路。 实现 RemoteViews 自定义View 这是最基础的...

    Notification状态通知栏(全解析)demo

    Notification状态通知栏(全解析)demo:包含通知栏中通知的添加、更新、删除,以及声音、震动、灯光特效,自定义通知视图;欢迎大家交流指教!!

Global site tag (gtag.js) - Google Analytics