桌面窗口小部件添加List
桌面窗口小部件添加List
@Author GQ 2018年07月08日
练习使用添加窗口小部件功能
长按桌面-添加窗口小部件-找到Flag-拖动到屏幕
效果图
流程
- 创建
MyAppWidgetProvider
重写onUpdate()
方法 - 使用
RemoteView
承载小部件的布局 appWidgetManager.updateAppWidget(appWidgetId, mRemoteViews)
方法更新小部件
AppWidgetProvider重写方法
onAppWidgetOptionsChanged
当widget被初次添加或者当widget 的大小被改变时,被调用
onEnabled
第一个widget被创建时调用
onDeleted
widget被删除时调用
onDisabled
最后一个widget被删除时调用
- 重要
onReceive
广播接收处理事件,我们的主要逻辑就需要在这里处理了
创建窗口小部件
- 继承自
AppWidgetProvider
- 声明Receiver
<!-- 声明widget对应的AppWidgetProvider --><receiver android:name=".MyAppWidgetProvider"><intent-filter><action android:name="android.appwidget.action.APPWIDGET_UPDATE" /><action android:name="CHANGE_POSITION" /> 点击item刷新<action android:name="CHANGE_DATA" /> 刷新list列表</intent-filter><meta-data
android:name="android.appwidget.provider"android:resource="@xml/appwidget_info" /> 声明小部件布局</receiver>
声明小部件
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"android:initialLayout="@layout/widget_layout"android:minHeight="150dp"android:minWidth="326dp"android:previewImage="@mipmap/ic_flag"android:resizeMode="horizontal|vertical"android:widgetCategory="home_screen|keyguard"><!--android:minWidth : 最小宽度android:minHeight : 最小高度android:updatePeriodMillis : 更新widget的时间间隔(ms),"86400000"为1个小时android:previewImage : 添加小部件时的预览图片android:initialLayout : 加载到桌面时对应的布局文件android:resizeMode : widget可以被拉伸的方向。horizontal表示可以水平拉伸,vertical表示可以竖直拉伸android:widgetCategory : widget可以被显示的位置。home_screen表示可以将widget添加到桌面,keyguard表示widget可以被添加到锁屏界面。android:initialKeyguardLayout : 加载到锁屏界面时对应的布局文件--></appwidget-provider>
在小部件使用List
- 创建
ListViewService
继承RemoteViewsService
class ListViewService : RemoteViewsService() {override fun onGetViewFactory(intent: Intent?): RemoteViewsFactory {return ListRemoteViewsFactory(this.applicationContext, intent)}
}
Manifest
声明Service
<service
android:name=".ListViewService"android:enabled="true"android:exported="false"android:permission="android.permission.BIND_REMOTEVIEWS" />
ListRemoteViewsFactory
- 继承自
RemoteViewsService.RemoteViewsFactory
- 主要复写方法 :
onCreate()
onDataSetChanged()
getCount()
getViewAt()
onDestroy()
有点类似于Adapter的内容,具体内容可以查看demo
查看Demo
桌面窗口小部件添加List相关推荐
- Android 如何预置桌面上的应用程序图标、快捷方式图标或者窗口小部件?
前言 欢迎大家我分享和推荐好用的代码段~~ 声明 欢迎转载,但请保留文章原始出处: CSDN:http://www.csdn.net ...
- html 添加窗口小部件,如何:为自定义窗口小部件定义主题(样式)项
波斯汪 是的,有一种方法:假设您有一个小部件的属性声明(在中attrs.xml): 声明用于样式参考的属性(在中attrs.xml): 为小部件声明一组默认属性值(在中styles.xml ...
- Android 之窗口小部件详解--App Widget
1 App Widget简介 App Widget是应用程序窗口小部件(Widget)是微型的应用程序视图,它可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新.你可以通过一个App Widge ...
- android学习笔记---61_Widgets,窗口小部件的制作...
2013/5/20 61_Widgets ------------------ Java技术qq交流群:JavaDream:2515720721.Widgets就是指窗口小部件,就是浮动在窗口中的部件 ...
- Android -窗口小部件开发(App Widgets) 3部分
原文地址:http://blog.csdn.net/iefreer/article/details/4626274. (一) 应用程序窗口小部件App Widgets 应用程序窗口小部件(Widget ...
- Android应用小工具(窗口小部件)
Widget是可以在其他应用程序被嵌入和接收定期更新的微型应用程序视图. 在创建一个应用程序窗口小部件,需要满足以下条件: AppWidgetProviderInfo--描述元数据为应用窗口小部件,如 ...
- Android 之窗口小部件高级篇--App Widget 之 RemoteViews - 跨到对岸去
在之前的一篇博文( Android 之窗口小部件详解--App Widge t)中,已经介绍了App Widget的基本用法和简单实例.这篇主要讲解 App Widget 的高级内容,即通过 Remo ...
- 如何将世界时钟和时区小部件添加到您的iPhone
When you work remotely or have friends and family who live in another country, it's important to kno ...
- Unity3D Editor 编辑器扩展2 选取物体、撤销操作和窗口小部件的显示
环境:Unity2017.2 语言:C# 总起: 今天主要介绍以下内容: 1.通过MenuCommand.Selection获取选中对象: 2.通过Undo编写可撤销的命令: 3.窗口小部件的显示. ...
最新文章
- 揭秘鸿蒙系统中的 JS 开发框架
- CSS布局代码:两列布局实例
- 成功解决ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any(
- 教你使用TensorFlow2判断细胞图像是否感染
- 【广州/深圳 活动】 MVP社区巡讲
- dataTable删除行
- 深入理解设计模式(22):享元模式
- linux追加SQL结果到文件,RAC环境下误操作将数据文件添加到本地存储
- LIS (nlogn)的算法
- spring-data-redis和jedis版本对应问题
- Android Studio 上传aar(Library)到JCenter
- 【基础知识】~ 集成电路设计流程,以及各阶段所使用的EDA工具
- 锁定计算机还能远程控制,我的电脑可能被远程控制
- c语言加油站仿真实验报告,c程序队列实现模拟加油站研讨.ppt
- erlang之ets总结
- bugku ctf 备份是个好习惯 (听说备份是个好习惯)
- JavaScript介绍及其特点
- 在html中设置全局字体样式
- linux corntab下的关机命令,centos6下定时任务crontab命令的使用 | 雷雨博客
- 微信分享网页链接自定义图片和文字描述
热门文章
- 操作系统学习笔记——第九讲——虚拟内存(9.4页框分配和颠簸)
- matlab khatri rao,一种低复杂度高准确度的Khatri-Rao 积分解算法
- win7 计算机点管理没反应,win7系统电脑点关机没反应的解决方法
- surf算法原理-包你明白surf过程
- 航天信息a3服务器怎么打开,航天信息 睿财A3 使用说明
- vim乱码问题的解决方法
- mathtype中的字号与word相对应
- SBAS-INSAR结果转点状图
- linux第一单元检测二,LINUX REDHAT第一单元文档
- 字节跳动Java后端面试真题,看完你学会了吗,「附面试福利」