安卓控件AppWidgetProvider使用方法详解

  

<强>介绍

  

AppWidgetProvider是Android中提供的用于实现桌面小工具的类,其本质是一个广播,即BroadcastReceiver,在实际的使用中,把AppWidgetProvider当成一个BroadcastReceiver即可

  

1。为AppWidget提供一个文件定义小控件的基本配置信息

  

在资源文件夹res目录下新建xml文件夹,添加app_widget_provider_info.xml文件内容为:

        & lt; & # 63; xml version=" 1.0 " encoding=" utf - 8 " & # 63;比;   & lt; !——小控件宽高——比;   & lt; !——android: minWidth=?0 dp”——比;   & lt; !——android: minHeight=?0 dp”——比;   & lt; !——更新时间——比;   & lt; !——android: updatePeriodMillis=?6400000”——比;   & lt; !——用于指定预览图片。即搜索到小部件时,查看到的图片。若没有设置的话,系统为指定一张默认图片。——比;   & lt; !——android: previewImage=" @drawable/widget_flashlight”——比;   & lt; !——小部件添加到手机主屏幕中的布局——比;   & lt; !——android: initialLayout=" @layout/flash_light_widget”——比;   & lt; !——android: resizeMode:小部件可以被拉伸的方向.horizontal表示可以水平拉伸,垂直表示可以竖直拉伸——比;   & lt; !——android: resizeMode=八絴垂直”——比;      & lt; appwidget-provider xmlns: android=" http://schemas.android.com/apk/res/android "   android: minWidth=" 40 dp "   android: minHeight=" 40 dp "   android: updatePeriodMillis=" 86400000 "   android: previewImage=" @drawable/ic_launcher”   android: initialLayout=" @layout/widget_layout”   android: resizeMode=八絴垂直”比;   & lt;/appwidget-provider>      之前      

2。创建一个WidgetProvider继承自AppWidgetProvider;

        公开课MyAppWidgetProvider延伸AppWidgetProvider {//没接收一次广播消息就调用一次,使用频繁   公共空间>   & lt; RelativeLayout xmlns: android=" http://schemas.android.com/apk/res/android "   android: layout_width=" 64 dp”   android: layout_height=" 64 dp”   比;   & lt; ImageButton   android: id=癅 + id/widget_led”   android: layout_margin=" 2 dp "   android:背景=" @drawable/widget_led”   android: src=" https://www.yisu.com/zixun/@drawable ic_launcher "   android: scaleType="中心"   android: layout_width=" 64.0下降”   android: layout_height=" 64.0浸”/祝辞      & lt;/RelativeLayout>      之前      

4。注册Manifest.xml

  

配置基本和广播一样,使用接收机节点,元数据节点的名字为固定格式,资源为第一步定义的配置信息,意图过滤器节点第三个动作必须提供

        & lt;接收机android: name=?jf.jfclean.widget.FlashLightWidget”比;   & lt; intent-filter>   & lt;行动android: name=" action_led_on "/比;   & lt;行动android: name=" action_led_off "/比;   & lt;行动android: name=" android.appwidget.action。APPWIDGET_UPDATE”/比;   & lt;/intent-filter>      & lt;元数据   android: name=" android.appwidget.provider "   android:资源=癅xml/flash_light_widget_info”/比;   & lt;/receiver>      之前      

5。使用PendingIntent和RemoteViews对AppWidget绑定监听器,使用RemoteViews在MyAppWidgetProvider的onUpdate()方法中为波顿绑定监听器

  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

安卓控件AppWidgetProvider使用方法详解