1. 概述:
在HoneyComb3.0中AppWidget上可以添加更多的组件,如:ListView,GridView,StackView和ViewFlipper等集合组件。它提供了一套新的
集合组件渲染机制RemoteViewService,它继承自Service,向外提供渲染ListView,GridView或StackView等集合组件的Factory,这个Factory
类似Adapter向这些集合组件提供数据。在AppWidgetProviderInfo类中(<appwidget-provider>标签)新增加了两个属性,一个是
previewImage,这个属性指定一张图片,这个图片显示在添加AppWidget的Picker界面中,拖动这张图片到Launcher的WorkSpace后就向其中
添加图片所对应的AppWidget,另一个是autoAdvanceViewId,这个属性指定自动更新的ViewID,我指定StackView的ID有效果(View之间不
停的滑动),但是指定的ListView或GridView的ID没有任何效果。
2. 整体效果图:
(1)AppWidget的Picker效果图,如下:
(2)AppWidget效果图,如下:
3. AppWidget的代码实现,如下:
(1)AndroidManifest.xml配置文件,如下:
(2)res/xml/目录中AppWidget的配置文件,如下:
(3)res/layout目录中AppWidget的总布局,如下:
(4)ContentProvider类,如下:
(5)AppWidget类,如下:
(6)RemoteViewsService渲染器,如下: