RemoteViews:远程的view,用在widget和自定义notification布局里。本文简单完成一个widget组件。
1.定义Widget布局XML /res/layout/widget_layout.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="#ccc" android:orientation="vertical" > <TextView android:id="@+id/widgetButton" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="30dp" android:background="#000000" android:text="firstWidget" android:textSize="20sp" /> </LinearLayout>
2.定义Widget属性文件 /res/xml/widget_info.xml
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android" android:minWidth="232dp" android:minHeight="132dp" android:updatePeriodMillis="86400000" android:initialLayout="@layout/widget_layout" > </appwidget-provider>
package net.qingtian.appwidget; import android.appwidget.AppWidgetManager; import android.appwidget.AppWidgetProvider; import android.content.Context; import android.util.Log; public class FirstWidgetProvider extends AppWidgetProvider { private static final String TAG = "qingtian"; @Override public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { Log.i(TAG, "onupdated"); super.onUpdate(context, appWidgetManager, appWidgetIds); } @Override public void onDeleted(Context context, int[] appWidgetIds) { Log.i(TAG, "onDeleted"); super.onDeleted(context, appWidgetIds); } @Override public void onDisabled(Context context) { Log.i(TAG, "onDisabled"); super.onDisabled(context); } @Override public void onEnabled(Context context) { Log.i(TAG, "onEnabled"); super.onEnabled(context); } }
<receiver android:name="net.qingtian.appwidget.FirstWidgetProvider" > <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_UPDATE" > </action> </intent-filter> <meta-data android:name="android.appwidget.provider" android:resource="@xml/widget_info" > </meta-data> </receiver>
demo下载地址:http://download.csdn.net/detail/u011647962/8182789