Android AppWidget 开发实例
2010-05-27 17:04:00 来源:WEB开发网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);
更多精彩
赞助商链接