Android kotlin全局悬浮窗全屏功能和锁屏页面全屏悬浮窗功能一

1.前言

在进行app应用开发中,在实现某些功能中要求实现悬浮窗功能,分为应用内悬浮窗 ,全局悬浮窗和 锁屏页面悬浮窗功能
等,接下来就来实现这些悬浮窗全屏功能,首选看下第一部分功能实现

2.kotlin全局悬浮窗全屏功能和锁屏页面全屏悬浮窗功能一分析

悬浮窗是属于Android系统的一种浮动窗口,可以在其他应用程序的上层显示,
可以随意拖动、缩放、关闭等操作,常用于提醒、通知、广告等
在Android系统中,每个窗口都对应一个Window对象,而悬浮窗就是一种特殊的Window,
通常采用从系统层面抽象出的ViewSystem中的PopupWindow来实现。
其中,PopupWindow是继承自具有运动能力的WindowManager.LayoutParams的一个类,
这也意味着我们可以随意对其进行位置、大小、显示方式等操作。因此,我们可以使用
PopupWindow实现一个不影响其他应用可随意操作且不需要Activity跳转的自定义悬浮窗

2.1 悬浮窗的实现方法

实现一个悬浮窗分为以下几个步骤:
(1)在AndroidManifest.xml中声明悬浮窗权限
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
(2)在需要显示悬浮窗的Activity或Service里面创建WindowManager和PopupWindow,设置其显示位置、大小和内容等属性
接下来在MainActivity中实现悬浮窗功能实现

class MainActivity : AppCompatActivity(), V

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/776650.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

API接口开发lazada获得lazada商品详情API采集商品详情页实时数据、实时销量、库存等参数接入演示

要获取Lazada商品详情页的实时数据、实时销量和库存等参数&#xff0c;你需要使用Lazada的API接口。以下是一个简单的Python示例&#xff0c;展示了如何使用requests库调用Lazada API并解析返回的数据&#xff1a; # coding:utf-8 """ Compatible for python2.…

Linux:基础IO

回顾C文件接口 stdin & stdout & stderr C 默认会打开三个输入输出流&#xff0c;分别是 stdin, stdout, stderr 仔细观察发现&#xff0c;这三个流的类型都是 FILE*, fopen 返回值类型&#xff0c;文件指针 系统文件I/O 接口介绍 open man open #include <sy…

TSINGSEE青犀推出县域治理视频基座数字化、智慧化解决方案

一、方案背景 县域治理方案是我国地方治理体系的重要组成部分&#xff0c;对于促进县域经济社会发展、维护社会稳定、推进全面深化改革具有重要意义。随着科技的不断进步&#xff0c;视频监管已经成为了现代社会治理的重要手段之一。县域治理视频监管方案是通过视频监控、数据…

鸿蒙OS开发实例:【装饰器-@BuilderParam】

背景 这是一个基础概念&#xff0c;其实没有什么原因&#xff0c;练习过程中&#xff0c;自然可以感受到其用法&#xff0c;后期加上真实项目的演练&#xff0c;会形成习惯 功能核心理念 “在自定义组件中添加一个点击跳转操作。若直接在组件内嵌入事件方法&#xff0c;将会…

电商系列之优惠券

> 插&#xff1a;AI时代&#xff0c;程序员或多或少要了解些人工智能&#xff0c;前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 坚持不懈&#xff0c;越努力越幸运&#xff0c;大家…

python解决序列重叠问题

tblastn比对出来候选HSP区段&#xff0c;我们需要根据一定的基因长度范围来进行区域延伸去重叠&#xff0c;然后进行下一步操作。对HSP区域的延伸要考虑基因的长度以及目标基因组scafflod or chromosome长度&#xff0c;不是一件容易的事情。 这里采用了dataclass以及改写slot…

安全上网,防止上网被记录(v2ray实现加密通信)

近期听一位亲威说&#xff0c;她在公司休闲的时候上了哪个网站&#xff0c;浏览了过的网站IT部门的人都会知道&#xff0c;这是因为现在大多数网络设备&#xff0c;像路由与交换机都有记录访问网站地址记录功能&#xff0c;涉及还可以设置成记录到交互的内容。要想保密&#xf…

【QT学习笔记】目录 (不定时更新)

解析 Qt消息机制和事件 Qt消息机制和事件--2 qt::WA_QuitOnClose 类库及用法 QString::number用法_qstring::number表示整数 emit用法 QString用法 QFile 用法 QPair用法 | 如何定义一个函数返回两个值 QFileDialog用法&#xff08;选择文件弹出框&#xff09; QFileI…

js 分割号查找内容

如果您想要在JavaScript中使用分隔符查找字符串中的内容&#xff0c;您可以使用String.prototype.split方法来分割字符串&#xff0c;然后使用数组的相关方法来查找特定内容。 以下是一个简单的例子&#xff0c;它使用逗号作为分隔符&#xff0c;查找字符串数组中的特定内容&a…

java openCV4-专栏目录

专栏简介 &#x1f492;个人主页 &#x1f4d6;说明&#x1f4d6;本专栏为java openCV的入门专栏 openCV4.x 目录 &#x1f4e2;前言&#x1f4e2;场景&#x1f43c;附言&#x1f4d6;目录 &#x1f4e2;前言 本专栏所有示例采用openCV4.8.0版本&#xff0c;你也可以采用其它…

MySQL面试汇总(一)

MySQL 如何定位慢查询 如何优化慢查询 索引及其底层实现 索引是一个数据结构&#xff0c;可以帮助MySQL高效获取数据。 聚簇索引和非聚簇索引 覆盖索引 索引创建原则 联合索引

AcWing 92. 递归实现指数型枚举

Problem: AcWing 92. 递归实现指数型枚举 文章目录 思路解题方法复杂度Code 思路 这是一个经典的递归问题&#xff0c;我们需要实现指数型枚举。这意味着我们需要找出所有可能的组合。在这个问题中&#xff0c;我们需要找出1到n的所有可能的组合。 解题方法 我们使用一个递归函…

Linux系统-----------MySQL 数据类型

目录 MySQL 数据类型 一、数值类型 二、日期和时间类型 三、字符串类型 &#xff08;1&#xff09;CHAR类型 &#xff08;2&#xff09;VARCHAR类型 &#xff08;3&#xff09;CHAR和VARACHAR的比较及其应用场景 MySQL 数据类型 MySQL 中定义数据字段的类型对你数据库的…

代码随想录 Day-25

力扣题目 509.斐波那契数 思路 很理所当然的&#xff0c;可以使用递归的方式其次是用动态规划的方式&#xff0c;动态规划的核心就是递推公式。 那么递推和递归一字之差&#xff0c;有什么区别呢&#xff1f;&#xff08;递推和递归的区别&#xff09; 1、递归 class Solutio…

Karmada 管理有状态应用 Xline 的早期探索与实践

背景与动机 目前随着云原生技术和云市场的不断成熟&#xff0c;越来越多的 IT 厂商开始投入到跨云多集群的怀抱当中。以下是 flexera 在 2023 年中关于云原生市场对多云多集群管理的接受程度的调查报告&#xff08;http://info.flexera.com&#xff09; 从 flexera 的报告中可…

软件杯 深度学习 机器视觉 人脸识别系统 - opencv python

文章目录 0 前言1 机器学习-人脸识别过程人脸检测人脸对其人脸特征向量化人脸识别 2 深度学习-人脸识别过程人脸检测人脸识别Metric Larning 3 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 深度学习 机器视觉 人脸识别系统 该项目…

算法训练day51Leetcode139.单词拆分 多重背包了解 背包问题总结

139.单词拆分 . - 力扣&#xff08;LeetCode&#xff09; 题目分析 初始化&#xff1a;初始化一个布尔型向量dp&#xff0c;大小为s.size() 1&#xff0c;所有值初始化为false&#xff0c;除了dp[0]被设置为true。这个布尔数组代表字符串s[0..i]能否通过拼接字典中的单词来形…

CMT(Cross Modal Transformer)实验环境搭建

项目地址&#xff1a;https://github.com/junjie18/CMT 论文地址&#xff1a;https://arxiv.org/pdf/2301.01283.pdf 环境&#xff1a;Ubuntu 20.04、cuda 11.1、python 3.8 1.创建虚拟环境CMT conda create -n CMT python3.8 -y conda activate CMT2.安装pytorch的GPU版本&am…

U盘惊变:文件夹竟成应用程序?数据恢复全攻略!

一、U盘突发异状&#xff1a;文件夹秒变应用程序 在数字化时代&#xff0c;U盘作为便携存储设备&#xff0c;在日常生活和工作中扮演着重要角色。然而&#xff0c;近期不少用户反映&#xff0c;他们的U盘突然出现了诡异的现象&#xff1a;原本整齐划一的文件夹图标&#xff0c…

STM32G473之flash存储结构汇总

STM32G4系列单片机&#xff0c;为32位的微控制器&#xff0c;理论上其内部寄存器地址最多支持4GB的命名及查找&#xff08;2的32次方&#xff0c;地址命名为0x00000000至0xFFFFFFFF&#xff09;。STM32官方对4GB的地址存储进行编号时&#xff0c;又分割成了8个block区域&#x…