WEB开发网
开发学院手机开发Android 开发 Android AppWidget 开发实例 阅读

Android AppWidget 开发实例

 2010-05-27 17:04:00 来源:WEB开发网   
核心提示:20. android:resource=”@xml/testwidget_setting” / >21. < /receiver >22. < /application >23. < /manifest >复制代码这样就是 Widget的简单的实现思路,需要特别说明的是And

20. android:resource=”@xml/testwidget_setting” / >

21. < /receiver >

22. < /application >

23. < /manifest >

复制代码

这样就是 Widget的简单的实现思路。需要特别说明的是Android 的Widget里有好多潜规则呀。一不小心,就可能中招。这就说明了实践是检验真理的唯一标准呀。

关于对 Widget上控件如何赋值?如下所示:

1. RemoteViews views = newRemoteViews(context.getPackageName(),R.layout.main);

2. Calendar

3. cal=Calendar.getInstance();

4. System.out.println(cal.getTime().toLocaleString());

5. views.setTextViewText(R.id.txttim,cal.getTime().toLocaleString());

6. appWidgetManager.updateAppWidget(appWidgetIds,views);

复制代码

为什么要通过 RemoteViews来向Widget设置界面呢?我也不知道,那位高人可以告诉我呢?这就是潜规则呀。在一般app应用里,直接用

setContentView(R.layout.main);

来实现。这个RemoteViews更特殊,设置Text时,必须通过

views.setTextViewText(R.id.txttim,cal.getTime().toLocaleString());

这种变态的方式才 可以赋值,实在令人琢磨不透呀。

通过appWidgetManager来,更新了页面,也就刷新了Widget界面。在获得 ACTION 为 com.sinxiao.app.fresh的Intent时,也是这样更新页面。在showTime();的方法里,

1. ComponentName thisWidget = new ComponentName(context,TestAppWidget.class);

2. AppWidgetManager.getInstance(context).updateAppWidget(thisWidget,views);

上一页  1 2 3 4 5 

Tags:Android AppWidget 开发实例

编辑录入:coldstar [复制链接] [打 印]
赞助商链接