当前位置: 首页 > news >正文

Android 音频开发——桌面小部件(七)

        对于收音机的车机 APP 开发,一般都有配套的桌面小部件(Widget)开发,这里对小部件的具体实现就不介绍了,这里主要介绍一些桌面(Launcher)中的小部件(Widget)弹出窗口功能实现。

一、功能描述

        在小部件上点击按钮,弹出一个有音源选择列表的弹窗,点击其他位置弹窗收回。

        简单一看是不是感觉是一个很好实现的功能。要是再 Activity 中这个功能当然很好实现,直接弹出一个 PopupWindow 就实现了,但是在 Widget 中是无法弹出 PopupWindow 和 Dialog 的。所以这里只能令想他法了。

二、功能实现

实现思路:创建一个弹窗布局,然后将他添加到 WindowManager 中进行显示。

        首先,我们创建一个弹窗辅助类,设置好弹窗属性及弹出动画等,并提供弹窗显示及移除方法。

/*** 弹窗辅助类*/
public class WindowUtils {private WindowManager mWindowManager;private View mSliderView;private static final ValueAnimator windowEnterAnimator;private static final ValueAnimator windowExitAnimator;static {windowEnterAnimator = ValueAnimator.ofInt();windowEnterAnim
http://www.lryc.cn/news/66871.html

相关文章:

  • 常见的C++包管理
  • 基于yolov7开发构建学生课堂行为检测识别系统
  • GPT-4 开始内测32k输入长度的版本了!你收到邀请了吗?
  • 如何用ChatGPT做新品上市推广方案策划?
  • Qt之QGraphicsEffect的简单使用(含源码+注释)
  • 前端优化-css
  • 第三方ipad笔哪个牌子好用?ipad触控笔推荐平价
  • windows10+detectron2完美安装教程
  • 串口与wifi模块
  • 上财黄烨:金融科技人才的吸引与培养
  • 利用MQ事务消息实现分布式事务
  • C++面向对象设计:深入理解多态与抽象类实现技巧
  • 长三角生物医药产业加速跑,飞桨螺旋桨为创新药企、医药技术伙伴装上AI大模型引擎...
  • orin Ubuntu 20.04 配置 Realsense-ROS
  • MyBatis基础知识点总结
  • 校园企业车辆维修报修管理系统设计与开发
  • 【企业信息化】第1集 免费开源ERP: Odoo 16 CRM客户关系管理系统
  • Flink创建Hudi的Sink动态表
  • 人脸识别技术的安全性及其应用探讨
  • 老域名查询工具- 在线域名批量查询工具
  • JimuReport - 积木报表(一款免费Web报表工具)
  • 01-数据操作+数据预处理
  • macOS本地python环境/vscode/导入python包/设置python解释器
  • 【转存】Go语言设计模式
  • 第十一章 升级与定制
  • 代码随想录算法训练营第二十二天|235. 二叉搜索树的最近公共祖先、701.二叉搜索树中的插入操作、450.删除二叉搜索树中的节点
  • hbase表出现RIT删除方案
  • SQL学习(3)
  • 连接型CRM助力医疗企业把“成本中心”变成“利润中心”
  • 《Vue.js 设计与实现》—— 03 Vue.js 3 的设计思路