首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    悬浮窗开发设计实践

    4.2 请求悬浮窗权限4.3 初始化悬浮窗4.4 设置悬浮窗参数4.5 添加View到悬浮窗4.6 悬浮窗拖拽实现4.8 悬浮窗权限适配4.9 LayoutParam坑05.方案基础设计5.1 整体架构图...,给人的假象是通话页面变小了,点击悬浮窗回到通过页面,悬浮窗消失。...退出通话页面悬浮窗消失。...市面上常见的悬浮窗,如微信视频通话功能,有如下特点:整屏页面能切换到一个小的悬浮窗;悬浮窗能运行在其他app上方;悬浮窗能跳回整屏页面,并且悬浮窗消失需求悬浮窗效果点击缩小按钮,将当前远端视屏加载进悬浮窗...7.3 点击多次打开页面问题说明一下如果你的悬浮窗点击事件是打开页面的话,这里需要注意了,别忘了将这个打开的页面的启动模式设置为singleTop或者是singleTask,从而复用同一个,远离一直按返回的地狱操作

    2.5K40

    Android 悬浮窗功能的实现

    业务场景 以微信视频通话为例,在视频通话时,我们打开其他应用或点击Home键退出时或点击缩放图标,悬浮窗会显示在其他应用之上,给人的假象是通话页面变小了,点击悬浮窗回到通过页面,悬浮窗消失。...2.通话页面隐藏时悬浮窗显示,通话页面显示时悬浮窗隐藏,可以看出悬浮窗和Activity的生命周期相关联,所以悬浮窗的Service和通话页面的Activity是通过bind去绑定的。...判断是否有悬浮窗权限 点击左上角图标时,我们要先判断当前app是否有悬浮窗权限,首先我们在配置文件中添加,悬浮窗的权限。...,并且悬浮窗消失,所以我们只需要给悬浮窗添加点击事件 linearLayout!!....start() // 添加悬浮窗的视图 winManager!!.

    6.3K10

    Android 可拖动悬浮窗实现

    作者:Kuky_xs 博客:https://www.jianshu.com/p/1d22edea2647 最近公司的项目里,需要通过悬浮窗进行控制,悬浮窗根据手势进行拖动。...项目最终效果 看完效果图,希望你能有点感兴趣,然后就开始上代码啦~,首先通过 WindowManager 添加一个指示的 indicatorView(就是侧边红色的条),用来提示用户通过这边进行拖动悬浮窗...,接着在手指在 indicatorView 按下的时候,添加一个空的 RelativeLayout,作为悬浮窗的 rootview,然后往 rootview 添加悬浮窗内容 contentView,通过...最后还需要判断最后一下手指的滑动方向,如果和初始的方向相反,则需要将拖出来的悬浮窗自动回滚到初始状态。...等到悬浮窗完全展示的时候,点击空白的地方,悬浮窗又需要从当前的位置回滚到初始的位置,其原理和拖出来的原理是一样的。

    2.1K21

    鸿蒙开发实战案例:视频悬浮窗

    将应用隐藏到后台,自动拉起悬浮窗继续播放视频。点击悬浮窗恢复图标,恢复到原始播放界面,视频继续正常播放。原始播放界面视频暂停不会拉起悬浮窗。悬浮窗视频暂停后,再点击恢复图标,原始播放界面视频继续播放。...悬浮窗点击关闭之后,原始播放界面视频暂停。点击原视频界面小窗口图标,可开启悬浮窗。手指在原视频左侧滑动可改变视频页面的亮度(需真机验证)。...Cause:${err.code}, message:${err.message}`); });}通过绑定同一个XComponent控制器使得视频页面和悬浮窗页面视频保持统一播放进度。...PipManager.getInstance().setAutoStart(true) PipManager.getInstance().updatePiPControlStatus() }}悬浮窗的从小窗口恢复到原始播放界面以及关闭悬浮窗...,悬浮窗的播放图标并不会实时更新,所以手动进行更新。

    7610

    Android免权限悬浮窗组件 - FloatingX

    FloatingX ,一个强大的免权限悬浮窗组件,支持全局,以及局部悬浮窗。...背景 在前几个月的业务开发中,我们 app 需要对悬浮窗进行更改,常见的悬浮窗实现方式分为两种: 前者是获取权限后,利用 WindowManager 实现 后者是基于 DecorView 实现的插入悬浮窗...于是我希望有这样一个组件,它必须具备以下基本要求: 无感插入 可拖动 良好的分层设计 这是最开始的功能,但随着封装过程,以及对比知乎等其他悬浮窗,我发现可能可以让这个东西更有意思,而不只是一个工具类。...插入到 DecorView 可以最大程度控制悬浮窗的自由度,即悬浮窗可以真正意义上[全屏]拖动。...感谢 基础 悬浮窗View 源自 EnFloatingView 的 FloatingMagnetView 实现方式,并在其基础上增加了一些改进。

    2.4K21

    HarmonyOS Next 悬浮窗拖拽和吸附动画

    效果图预览使用说明按住悬浮窗可以拖拽,松开后悬浮窗自动靠左或靠右,如果悬浮窗超出内容区上下边界,自动吸附在边界位置。...aboutToAppear中获取应用窗口尺寸,使用窗口宽度减去悬浮窗宽度和右边距让悬浮窗初始靠右。...Cause:' + JSON.stringify(exception)); }悬浮窗组件添加onTouchEvent回调,在手指按下时保存触摸点与悬浮窗左上角的偏移量offsetX和offsetY,用于移动时悬浮窗位置的计算...y轴偏移和设备顶部状态栏高度 }) break; }手指抬起时,通过判断悬浮窗中心在水平方向位于窗口中心的左侧或右侧设置悬浮窗靠左或靠右,如果悬浮窗超出内容区上下边界,则将悬浮窗设置在边界位置...} else { this.positionX = Constants.PAGE_PADDING; // 悬浮窗靠左 } // 页面高度 const

    14520

    Android仿微信文章悬浮窗效果

    序言 前些日子跟朋友聊天,朋友Z果粉,前些天更新了微信,说微信出了个好方便的功能啊,我问是啥功能啊,看看我大Android有没有,他说现在阅读公众号文章如果有人给你发微信你可以把这篇文章当作悬浮窗悬浮起来...,方便你聊完天不用找继续阅读,听完是不是觉得这叫啥啊,我大Android微信版不是早就有这个功能了吗,我看文章的时候看到过有这个悬浮按钮,但是我一直没有使用过,试了一下还是挺方便的,就想着自己实现一下这个功能...原理 看完动图我们来分析一下,如何在每个页面上都存在一个View呢,有些人可能会说,写在base里面,这样每次启动一个新的Activity都要往页面上addView一次,性能不好,再说了,我们作为一个优秀的程序员能干这种重复的事吗...实现 1、权限 首先我们要考虑的一个问题就是权限问题,因为要适配Android 7.0 8.0,添加悬浮窗是需要申请权限的,这里参考了Android 悬浮窗权限各机型各系统适配大全这篇文章,适配的比较全...ViewGroup到Window 判断好权限之后,直接添加就可以了 1@SuppressLint("CheckResult") 2private void showWindow(Context context

    1.5K30

    「 神器 」极简网速监控悬浮窗软件

    前言 很多时候,我们使用xx卫士/管家只是为了使用它的网速监控悬浮功能,这次墙裂推荐一个小众软件TrafficMonitor,极简的网速监控悬浮窗软件,软件虽小但很精致,终于能摆脱xx卫士/管家了~ TrafficMonitor...Traffic Monitor是一款用于Windows平台的网速监控悬浮窗软件,可以显示当前网速、CPU及内存利用率,支持嵌入到任务栏显示,支持更换皮肤、历史流量统计等功能。...更换皮肤、自定义样式 历史流量记录 流量、内存报警 界面 TrafficMonitor 不仅功能全面,界面简洁美观~ 悬浮窗模式 ?...右键 悬浮窗,对显示样式进行自定义设置。 可以选择显示在悬浮窗或任务栏、监控项目、透明度等,十分简单。 ?...进入 “选项”,可以自定义悬浮窗和任务栏的显示效果,包括文本颜色、字体、背景、单位、显示文本等。 以及设置开机自启和流量/内存报警等。 ?

    1.8K10

    flutter |悬浮窗解决方案 flutter_floating

    特性 全局的悬浮窗管理机制 支持各项回调监听,如移动、按下等 支持自定义是否保存悬浮窗的位置信息 支持单页面及全局使用,可插入 N 个悬浮窗 支持自定义禁止滑动区域,例如在 距离顶部 50 到底部的区域内滑动等...完善的日志系统,可查看不同悬浮窗对应的 Log 支持自定义位置方向及悬浮窗的各项指标 支持越界回弹,多指触摸移动,自适应屏幕旋转以及小窗口等情况 ........单悬浮窗创建 单悬浮窗可用于某个页面中,页面退出后关闭即可。 class CustomPage extends StatefulWidget { const CustomPage({Key?...Container(), ); } @override void dispose() { floating.close(); super.dispose(); } } 添加悬浮窗各项回调...全局悬浮窗管理对应方法

    1.8K30
    领券