android学习之widget

来源:互联网 发布:关系数据库种类 编辑:程序博客网 时间:2024/05/18 00:43

翻译自http://developer.android.com/guide/topics/appwidgets/index.html#AppWidgetProvider

App Widgets

App Widgets是一种缩小的application,可以嵌入在其他application中(比如Home),可以定时更新。可以通过App Widget provider发布App Widget。一个application组件如果装载了App Widgets就称为App Widgets host。

The Basics

要创建一个App Widgets,你需要:

AppWidgetProviderInfo对象描述了App Widgets的元数据,例如布局、更新频率和AppWidgetProvider类。这个定义在XML里

AppWidgetProvider类定义了基于广播事件编写App Widgets的一些方法。通过它,当App Widgets更新、可用、不可用或删除时你会接到广播信息

View layout定义了App Widgets的初始布局

此外,你可以实现App Widget configuration Activity。当用户添加你的App Widget而且能修改设置时,这个Activity可以选择运行。

下面介绍如何设置组件:

Declaring an App Widget in the Manifest

首先在AndroidManifest.xml文件中声明AppWidgetProvider类

<receiver android:name="ExampleAppWidgetProvider">   

          < intent-filter>       

                   <actionandroid:name="android.appwidget.action.APPWIDGET_UPDATE"/>   

          </intent-filter>   

          <meta-dataandroid:name="android.appwidget.provider"              

                             android:resource="@xml/example_appwidget_info"/>

</receiver>

<receiver>元素中的android:name属性指定App Widgets使用的AppWidgetProvider

<action>元素指定AppWidgetProvider接收ACTION_APPWIDGET_UPDATE广播,这是唯一一个你必须明确声明的广播。AppWidgetManager必要时自动对AppWidgetProvider发送App Widget广播

<meta-data>指定AppWidgetProviderInfo资源