创建widget的基本步骤是:
1.写一个类继承AppWidgetProvider,由此可以看出来,widget实际上是一个广播,所以要在清单文件中注册广播
2.在清单文件中配置
<receiver android:name="com.example.mobilesafe.receiver.MyWidget" >
<intent-filter>
< android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data
android:name="android.appwidget.provider"
android:resource="@xml/process_widget_provider" />
</receiver>
2.1其中receiver 中name为AppWidgetProvider的子类,
action 中的name意图过滤器中的动作,不用改变 ;
最后要在res文件夹下创建xml文件夹,在文件夹中创建process_widget_provider.xml文件
3.process_widget_provider.xml文件
<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:initialLayout="@layout/process_widget"
android:minHeight="100dip"
android:minWidth="300dip"
android:updatePeriodMillis="0" />
android:initialLayout为widget的显示布局文件
android:minHeight为widget的显示高度
android:minWidth为widget的显示宽度
android:updatePeriodMillis为自动更新其界面内容的时间
4.布局文件android:initialLayout
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical" >
<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10.0dip"
android:text="hello widget"/>
</LinearLayout>