本文實(shí)例講述了Android桌面插件App Widget用法。分享給大家供大家參考,具體如下:
應(yīng)用程序窗口小部件App Widgets
應(yīng)用程序窗口小部件(Widget)是微小的應(yīng)用程序視圖,可以被嵌入到其它應(yīng)用程序中(比如桌面)并接收周期性的更新。你可以通過一個App Widget provider來發(fā)布一個Widget。可以容納其它App Widget的應(yīng)用程序組件被稱為App Widget宿主。下面的截屏顯示了一個音樂App Widget。
appwidget

這篇文章描述了如何使用App Widget Provider發(fā)布一個App Widget。
基礎(chǔ)知識The Basics
為了創(chuàng)建一個App Widget,你需要下面這些:
AppWidgetProviderInfo 對象
描述一個App Widget元數(shù)據(jù),比如App Widget的布局,更新頻率,以及AppWidgetProvider 類。這應(yīng)該在XML里定義。
AppWidgetProvider 類的實(shí)現(xiàn)
定義基本方法以允許你編程來和App Widget連接,這基于廣播事件。通過它,當(dāng)這個App Widget被更新,啟用,禁用和刪除的時候,你都將接收到廣播通知。
視圖布局
為這個App Widget定義初始布局,在XML中。
另外,你可以實(shí)現(xiàn)一個App Widget配置活動。這是一個可選的活動Activity,當(dāng)用戶添加App Widget時加載并允許他在創(chuàng)建時來修改App Widget的設(shè)置。
下面的章節(jié)描述了如何建立這些組件:
在清單中聲明一個應(yīng)用小部件
首先,在應(yīng)用程序AndroidManifest.xml文件中聲明AppWidgetProvider 類,比如:
<receiver android:name="ExampleAppWidgetProvider" > <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> </intent-filter> <meta-data android:name="android.appwidget.provider" android:resource="@xml/example_appwidget_info < src="http://hi.images.csdn.net/js/blog/tiny_mce/themes/advanced/langs/zh.js" type="text/javascript"> < srcsrc="http://hi.images.csdn.net/js/blog/tiny_mce/plugins/syntaxhl/langs/zh.js" type="text/javascript"> " /></receiver>
<receiver>元素需要android:name屬性,它指定了App Widget使用的AppWidgetProvider 。
<intent-filter> 元素必須包括一個含有android:name屬性的<action>元素。該元素指定AppWidgetProvider接受ACTION_APPWIDGET_UPDATE 廣播。這是唯一你必須顯式聲明的廣播。當(dāng)需要的時候,AppWidgetManager 會自動發(fā)送所有其他App Widget廣播給AppWidgetProvider。
<meta-data> 元素指定了AppWidgetProviderInfo 資源并需要以下屬性:
? android:name 主站蜘蛛池模板: 道孚县| 庄河市| 申扎县| 宣武区| 道孚县| 罗山县| 鹤峰县| 武冈市| 寻乌县| 白城市| 西宁市| 松潘县| 开平市| 阜宁县| 高淳县| 客服| 合山市| 绥滨县| 余干县| 玉屏| 高密市| 交口县| 筠连县| 盐城市| 新邵县| 石首市| 墨江| 枝江市| 柘城县| 金门县| 昌都县| 治县。| 克拉玛依市| 梅河口市| 冷水江市| 大安市| 阿克苏市| 江源县| 赣榆县| 鄂尔多斯市| 兰溪市|