构建应用程序窗口小部件(App Widget)

Android开发中实现桌面小部件App Widget 在Android开发中,有时候我们的App设计的功能比较多的时候,需要根据需要更简洁的为用户提供清晰已用的某些功能的时候,用桌面小部件就是一个很好的选择,即App Widget,下面我们就用Android studio来创建一个简单的桌面小部件: 选择New->Widget->App Wight 2.接下来设置App Widget的一些信息 其中Minimum Width 和 Mi 阅读详情

一、在Manifast.xml文件中声明你自定义的AppWidgetProvider:

<receiver android:name="ExampleAppWidgetProvider" >
    <intent-filter>
        <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
    </intent-filter>
    <meta-data android:name="android.appwidget.provider"
               android:resource="@xml/example_appwidget_info" />
</receiver>

receiver name 属性为自定义的类,需继承AppWidgetProvider,resource 属性指明AppWidgetProviderInfo所在的文件位置;该类对小部件的基本属性做定义。


二、在res文件夹下新建xml文件夹,新建metadata resource属性指定的文件:

<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
    android:minWidth="40dp"
    android:minHeight="40dp"
    android:updatePeriodMillis="86400000"
    android:previewImage="@drawable/preview"
    android:initialLayout="@layout/example_appwidget"
    android:configure="com.example.android.ExampleAppWidgetConfigure"
    android:resizeMode="horizontal|vertical"
    android:widgetCategory="home_screen">
</appwidget-provider>


minWidth与minHeight属性表示了App Widget所需的最小布局区域。 

updatePeriodMillis属性定义了App 
Widget框架调用AppWidgetProvider的onUpdate方法的频率。

linitialLayout属性标识了初始布局文件。

configure属性定义了当用户添加App Widget时调用的Activity。(这是可选的)

previewImage定义了App Widget的缩略图,当用户从widget列表中选择时,显示的就是这张图。如果没设置,用户将看见的是你的应用的默认图标。

resizeMode属性标识了widget重新布局的规则。


三、在layout文件夹下新建initialLayout属性值指定的xml文件,定义widget的布局:

<FrameLayout
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:padding="@dimen/widget_margin">

  <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    android:background="@drawable/my_widget_background">
    …
  </LinearLayout>

</FrameLayout>

四、实现自定义的AppWidgetProvider类,覆盖其中的方法:
onEnabled():小部件第一次创建的时候调用;
onUpdate():小部件更新时调用,如用户添加小部件的时候,指定的更新时间到的时候;
onDeleted():删除一个小部件时调用;
onDisabled():最后一个小部件被删除时调用。



智能小程序小部件(Widget)开发详解 小部件(Widget) 的开发在智能小程序的基础上增加一个目录即可,用于存放小部件(Widget)的代码。并在project.tuya.json中增加一个声明。 阅读详情

相关推荐

Android App Widget开发实例:创建自定义小部件

在“res”文件夹下的“layout”文件夹中,创建一个新的布局文件,例如widget_layout.xml。在该文件中,我们可以定义小部件的外观和布局。在上面的示例中,我们将App Widget提供者类注册为一个接收APPWIDGET_UPDATE动作的广播接收器,并在其中指定了一个包含小部件信息的XML文件。在上面的例子中,我们创建了一个垂直方向的线性布局,并在其中放置了一个居中对齐的TextView。在上面的例子中,我们指定了小部件的最小宽度和高度,更新周期和初始布局。希望这篇文章对您有所帮助!

2301_79330511的博客 565

AppWidgetProvider窗口小部件

AppWidgetProvider是android中提供的用于显示桌面小部件的类,其本质是一个广播,其继承了BroadcastReceiver,在实际应用中把他当做一个BroadcastReceiver就可以了。 1.定义类MyAppWidgetProvider继承AppWidgetProvider public class MyAppWidgetProvider extends AppW

qq_29427129的博客 454

Android主屏幕小部件开发实战:App Widget从入门到精通

在styles.xml中定义主题风格:</style>然后在布局文件中引用:<TextView... />小部件的尺寸和更新频率是影响用户体验和系统性能的关键因素。合理设置和不仅能提升适配性,还能避免因过度轮询导致的电池损耗。与相对应,在用户删除最后一个该类型的widget实例时被调用。此时系统发出广播,标志着该widget类型的生命周期结束。这是释放全局资源的最佳时机。@Override// 停止后台服务// 清理缓存数据.edit()

weixin_35734408的博客 823

Android开发5:应用程序窗口小部件App Widgets的实现

前言   本次主要是实现一个Android应用,实现静态广播、动态广播两种改变 widget内容的方法,即在上篇博文中实验的基础上进行修改,所以此次实验的重点是AppWidget小部件的实现啦~   首先,我们简单说一下Widget是一个啥玩意~   应用程序窗口小部件(Widget)是微小的应用程序视图,可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新。你可以通过一个App ...

weixin_30783629的博客 577

nacos3.1.0适配国产数据库

Nacos 3.1.0适配国产数据库指南 本文介绍了Nacos 3.1.0版本适配达梦数据库和人大金仓数据库的具体步骤。主要内容包括:添加达梦和人大金仓的JDBC驱动依赖,修改nacos-persistence模块的配置文件及相关Java类,以及打包和运行注意事项。文章特别指出3.1.0版本需要JDK17环境,并提供了解决常见问题的建议,如添加VM options配置和不同启动方式等。通过本文的配置指导,可以实现Nacos服务在国产数据库环境下的正常运行。

梦昼初的博客 1467

WRF移动嵌套结合伏羲模型与CFD(PALM)高精度多尺度降尺度分析研究

WRF移动嵌套(Moving Nesting):动态调整高分辨率嵌套网格位置,追踪天气系统(如台风、强对流系统)以提高局地预报精度。伏羲(Fuxi)模型:国产数值模式,提供对WRF模拟的初始及边界条件优化。CFD(Computational Fluid Dynamics)PALM模型:精细化局地流场、湍流、温度分布。

m0_57411304的博客 1716

一步步创建Qt Widget项目+TextFinder案例(摘自笔者2015年将出的《QT5权威指南》,本文为试读篇)

创建一个基于应用的QtWidget应用程序 这个手册描述了怎样使用QtCreater创建个一个小的Qt应用程序,Text Finder.它是Qt 工具Text Finder例子的简写版本。这个应用程序的用户界面通过使用Qt Designer来构造生成。逻辑上来说,这个应用程序是通过代码编辑器上编写C++代码实现的。   创建Text Finder 项目

涂作权的博客 2807

赛灵思Xilinx 7系列FPGA硬件设计知识总结

本文讲述了赛灵思7系列FPGA硬件设计的关键点,为使用该系列FPGA提供硬件设计参考。

csdn_dsw的博客 3621

html 添加窗口小部件,如何:为自定义窗口小部件定义主题(样式)项

波斯汪是的,有一种方法:假设您有一个小部件的属性声明(在中attrs.xml): 声明用于样式参考的属性(在中attrs.xml): 为小部件声明一组默认属性值(在中styles.xml):    some value声明自定义主题(在中themes.xml):    @style/Widget.ImageButton.Custom将此属性用作窗...

weixin_34178408的博客 396

VSCode + QMT 量化交易完整解决方案!

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值 。

**My Coding Family** 1327

【AUTOSAR-E2E】-1.4-详述E2E Transformer解决方案

共13页精讲 目录 1“Data Transformation”介绍 1.1 基于SOME/IP Transformer 1.2 基于COM Based Transformer 2 ComXf(COM Based Transformer)介绍 2.1 ComXf(COM Based Transformer)功能规范 2.2 ComXf(COM Based Transformer)提供的服务 2.3 配置注意事项 3 E2EXf(E2E Transformer)介绍 3.1 E2EX...

「汽车电子助手」的博客 4700

android:AppWidget 窗口小部件的开发思想和Demo

AppWidget 窗口小部件的开发思想和Demo   这篇文章讲一下android系统“窗口小部件”(也叫做,主屏幕部件)的开发过程。什么叫窗口小部件呢? 是指在主屏幕上显示的独立视图(不过填充了数据)。这些视图的数据内容由后台进程顶起更新。要用到RemoteViews来 显示部件,还要指派广播接收器更新这些RemoteViews. 既可以单独做个窗口小部件,也可在App中嵌入多个窗口小部

?疯啦 1294

笔试题-2023-加特兰-数字IC设计【纯净题目版】

笔试题-2023-加特兰-数字IC设计【纯净题目版】

w0shishabi的博客 2248

Android App Widget桌面小部件开发实践

App Widget桌面小部件已经被很多APP所使用,在日常的生活中也有很多人在使用,最常见的就是时钟、天气、日历、记事本这样的小工具,但是不少主流APP也提供了一些快捷功能的小部件,例如音乐快捷播放、代办事项、课程表、股票、购物快捷搜索、邮箱邮件等等,桌面小部件是APP部分业务功能的快捷入口,可以有效提升用户的使用体验缩短触达链路。

冰码思维库 4033

DICOM图像知识:深入详解DICOM的层级关系

解析DICOM的四个主要层级:Patient(患者)、Study(检查)、Series(序列)和SOP(服务-对象对),探讨它们之间的关系、各自的唯一标识符以及在实际应用中的用途

编程技术探索者,分享C/C++、C#、Java、数据库等开发经验,聚焦实战技巧与AI兴趣,助力编程爱好者成长。 3304

AI人工智能领域多模态数据融合在智能诊断系统的应用案例

在医疗诊断领域,单一模态数据(如CT影像或电子病历)的局限性日益凸显——就像老中医只"望"不"闻"会漏掉关键线索。本文将深入解析多模态数据融合技术如何突破这一瓶颈:从生活化的"中医四诊"类比切入,拆解数据层/特征层/决策层融合的技术原理;结合肺癌智能诊断的真实案例,展示CT影像、病理文本、基因数据、生命体征的多模态融合全流程;最后探讨技术落地的核心挑战与未来方向。无论你是医疗从业者、AI开发者,还是对智能诊断感兴趣的爱好者,都能从中获得技术启发与应用思路。

AGI×大数据,开启智能时代的认知跃迁;解码AGI,赋能数据驱动的智能革命。 833

Android Widget——实现桌面小部件

前言       在Android手机中,我们经常会看到各种桌面小部件,天气、音乐播放器、时间表盘等,这些都是桌面小部件的实例。本篇主要介绍桌面小部件开发的一些最基础的知识。 Widget介绍       Widget并没有运行在我们App的进程中,而是运行在系统的SystemServer进程中。所以意味着我们也不能像在App中那样操作View控件。为了我们能在远程进程中更新界面,Goog

haazzz的博客 4122

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Android列表小部件(Widget)开发详解

Widget是Android应用小部件,它可以作为一个微型视图嵌套在其他应用程序中(比如可以放置在桌面),并接收周期性更新。通常来说,小部件可以通过与App交互更方便的将App的内容展示给用户,同时它也是App的一个便捷入口。本篇文章来一起来探讨Android小部件的相关知识,并通过一个在Widget中嵌套了一个列表的例子来认识Android小部件。 国际惯例先看demo效果图: 本篇文章......

smily的博客 5万+

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

android widget 发送广播,Android开发中的窗口小部件App Widget

本文和大家重点讨论一下Android开发指南-窗口小部件App Widgets ,应用程序窗口小部件Widget开发是微小的应用程序视图,可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新。Android开发指南-窗口小部件App Widgets应用程序窗口小部件App Widgets应用程序窗口小部件Widget开发是微小的应用程序视图,可以被嵌入到其它应用程序中(比如桌面)并接收周期性的...

weixin_39975744的博客 692

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

为你的Android应用构建窗口小部件(App Widget)

文章目录1. 基础2. 实现窗口小部件(App Widget)第一步:创建窗口小部件布局文件第二步:添加`AppWidgetProviderInfo`元数据配置     App Widget是微型应用程序视图,可以嵌入其他应用程序(例如主屏幕)中并定期更新内容。这些视图在用户界面中称为“窗口小部件”,可以通过App窗口小部件提供程序发布窗口小部件。能够容纳其...

yingaizhu的博客 3305

Android 之窗口小部件详解--App Widget

1 App Widget简介 App Widget是应用程序窗口小部件(Widget)是微型的应用程序视图,它可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新。你可以通过一个App Widget Provider来发布一个Widget。 本文参考Android官方文本,先介绍App Widget的主要组件,然后再以示例来详细说明。 2 App Widget主要的相关类介绍 2.1 AppWidgetProvider AppWidgetProvider继承自 BroadcastRe.

飞翔的熊blabla 5951

Android中widget窗口小部件的简单应用

对于手机桌面小部件大家都不会模式,比如桌面上的时钟,天气,日历等等,都属于widget。 简单做个widget小部件,先看一下效果图。 只是在桌面显示个时间,每过一秒刷新一次。 接下来上代码: 首先需要在Layout中新建个布局widget.xml此布局为桌面上要显示的内容,在里面放个TextView xml version="1.0" encoding="utf-8

Forest的博客 4958

App Widget应用程序窗口小部件-田少嵩

App Widget是应用程序窗口小部件(Widget)是微型的应用程序视图,它可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新。你可以通过一个App Widget Provider来发布一个Widget。 AppWidgetProvider 继承自 BroadcastReceiver,它能接收 widget 相关的广播,例如 widget 的更新、删除、开启和禁用等 AppWi

tarena_3G的博客 535

android app窗口位置吗,Android开发中的窗口小部件App Widgets(2)

Widget开发有很多值得学习的地方,这里向大家简单介绍一下Android开发指南-窗口小部件App Widgets ,希望本文介绍对你有所帮助。下面的章节描述了如何建立这些组件:在清单中声明一个应用小部件首先,在应用程序AndroidManifest.xml文件中声明AppWidgetProvider 类,比如:复制到剪贴板 XML/HTML代码android:resource="@xml/e...

weixin_31328141的博客 127
上一篇: Android 动画设计
下一篇: Android支持不同设备上的显示
ssjj_programmer
博客等级 码龄11年 2粉丝 34原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值