Android 桌面组件【widget】 初学
16lz
2021-01-23
- 1、AppWidget 框架类
- 2、在 Android 如何使用 Widget
- 3、AppWidget 框架的主要类介绍
- 4、DEMO 讲解
- 1、AppWidgetProvider :继承自 BroadcastRecevier , 在AppWidget 应用 update、enable、disable 和 delete 时接收通知。其中,onUpdate、onReceive 是最常用到的方法,它们接收更新通知。
- 2、AppWidgetProvderInfo:描述 AppWidget 的大小、更新频率和初始界面等信息,以XML 文件形式存在于应用的 res/xml/目录下。
- 3、AppWidgetManger :负责管理 AppWidget ,向 AppwidgetProvider 发送通知。
- 4、RemoteViews :一个可以在其他应用进程中运行的类,向 AppWidgetProvider 发送通知。
2、在 Android 如何使用 Widget
- 1、长按主界面
- 2、之后弹出一个对话框,里面就有android 内置的一些桌面组件
3、AppWidget 框架的主要类介绍
1) AppWidgetManger 类
- bindAppWidgetId(int appWidgetId, ComponentName provider)
通过给定的ComponentName 绑定appWidgetId
- getAppWidgetIds(ComponentName provider)
通过给定的ComponentName 获取AppWidgetId
- getAppWidgetInfo(int appWidgetId)
通过AppWidgetId 获取 AppWidget 信息
- getInstalledProviders()
返回一个List<AppWidgetProviderInfo>的信息
- getInstance(Context context)
获取 AppWidgetManger 实例使用的上下文对象
- updateAppWidget(int[] appWidgetIds, RemoteViews views)
通过appWidgetId 对传进来的 RemoteView 进行修改,并重新刷新AppWidget 组件
- updateAppWidget(ComponentName provider, RemoteViews views)
通过 ComponentName 对传进来的 RemoeteView 进行修改,并重新刷新AppWidget 组件
- updateAppWidget(int appWidgetId, RemoteViews views)
通过appWidgetId 对传进来的 RemoteView 进行修改,并重新刷新AppWidget 组件
2) 继承自 AppWidgetProvider 可实现的方法为如下:
- 1、onDeleted(Context context, int[] appWidgetIds)
- 2、onDisabled(Context context)
- 3、onEnabled(Context context)
- 4、onReceive(Context context, Intent intent)
Tip:因为 AppWidgetProvider 是继承自BroadcastReceiver 所以可以重写onRecevie 方法,当然必须在后台注册Receiver - 5、onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds)
更多相关文章
- android Q(10)发送通知Notification出现无法推送问题解决方式
- android:四大组件
- 【 Android 10 四大组件 】系列 -- Activity 的 "启动流程"
- Android学习笔记九:基本视图组件:Spinner
- Android系列教程之九:GridView组件的使用
- Android程序开发的基本框架
- Android Widget小组件开发
- Android通知栏的高度获取