首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android 拖动悬浮实现

作者:Kuky_xs 博客:https://www.jianshu.com/p/1d22edea2647 最近公司的项目里,需要通过悬浮进行控制,悬浮根据手势进行拖动。...,接着在手指在 indicatorView 按下的时候,添加一个空的 RelativeLayout,作为悬浮的 rootview,然后往 rootview 添加悬浮内容 contentView,通过...最后还需要判断最后一下手指的滑动方向,如果和初始的方向相反,则需要将拖出来的悬浮自动回滚到初始状态。...等到悬浮完全展示的时候,点击空白的地方,悬浮又需要从当前的位置回滚到初始的位置,其原理和拖出来的原理是一样的。...这里附上 demo 的效果,虽然和实际项目的效果还是有差别,但是核心思想在这了 手势滑动悬浮框 最后双手捧上源码 悬浮源码(https://github.com/kukyxs/AndroidCodes

2.1K21
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    简易的拖动的桌面悬浮效果Demo

    首先,我们需要知道,悬浮分为两种:Activity级别的悬浮,系统级别的悬浮 Activity级别的悬浮跟随所属Activity的生命周期而变化,而系统级别的悬浮则可以脱离Activity而存在...由此可知,要实现360手机卫士那样的悬浮效果,就需要使用系统级别的悬浮 下面学习实现桌面悬浮效果的代码步骤: Demo描述,悬浮为一个ImageView ,可以在桌面 ,任意应用,锁屏上方任意移动...3、添加一个UI空间,作为悬浮的内容 ,当然Demo是一个ImageView作为悬浮内容,实际项目中就需要用复杂View,ViewGroup来扩展功能了           //注意,悬浮只有一个...,而当打开应用的时候才会产生悬浮,所以要判断悬浮是否已经存在,      if (imageView !...此窗口不能获得输入焦点,否则影响锁屏 // FLAG_NOT_FOCUSABLE 悬浮窗口较小时,后面的应用图标由不可长按变为长按,不设置这个flag的话,home页的划屏会有问题 // FLAG_NOT_TOUCH_MODAL

    3.2K70

    悬浮开发设计实践

    接口设计图5.5 模块间依赖关系06.其他设计说明6.1 性能设计6.2 稳定性设计6.3 异常设计6.4 事件上报设计07.遇到的问题和坑7.1 处理输入法层级关系7.2 边界逻辑关闭悬浮7.3...,且悬浮拖拽,不影响其他界面焦点;点击悬浮返回原来的Activity1.2 遇到问题什么是悬浮全局悬浮在许多应用中都能见到,点击Home键,小窗口仍然会在屏幕上显示。...Type为TYPE_APPLICATION_ATTACHED_DIALOG:需要在Activity获取焦点,并且用户可操作时才添加。...7.2 边界逻辑关闭悬浮先看一下问题谷歌坑人的地方,都没地方设置这个悬浮是否只用到app内,所以默认在桌面上也会显示自己的悬浮。...尝试解决这个问题为了解决这个问题,最初的实现方式是对所有经过的activity进行记录,显示就加1,页面被挂起就减1,如果减到当前计数为0时说明所有页面已经关闭了,就可以隐藏悬浮了。

    2.4K40

    Android利用WindowManager实现悬浮

    前言 你会发现QQ视频的时候,就算手机回到主页,视频小模块依旧能悬浮在桌面上。还有当年很火的各种手机杀毒软件的桌面小助手,总能在呆在桌面。这种悬浮的操作就需要用到Window。...权限 Android6.0以上,如果要用系统Window,我们需要申请悬浮权限。毕竟WindowManager.LayoutParams.TYPE_TOAST权限限制太多了。...Manifests: <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" / 判断是否有悬浮权限: Settings.canDrawOverlays...Demo 利用ActivityLifecycleCallbacks实现了前后台的监听,切换到后台时隐藏了悬浮。...源码下载:Android利用WindowManager实现悬浮 以上就是本文的全部内容,希望对大家的学习有所帮助。

    3.9K80

    Android 悬浮功能的实现

    业务场景 以微信视频通话为例,在视频通话时,我们打开其他应用或点击Home键退出时或点击缩放图标,悬浮会显示在其他应用之上,给人的假象是通话页面变小了,点击悬浮回到通过页面,悬浮消失。...1.悬浮可以显示在其他应用或launchers之上,这个肯定需要悬浮权限,而悬浮权限属于特殊权限,所以只能通过引导用户去打开无法像危险权限那样直接申请。...2.通话页面隐藏时悬浮显示,通话页面显示时悬浮隐藏,可以看出悬浮和Activity的生命周期相关联,所以悬浮的Service和通话页面的Activity是通过bind去绑定的。...判断是否有悬浮权限 点击左上角图标时,我们要先判断当前app是否有悬浮权限,首先我们在配置文件中添加,悬浮的权限。...,设置悬浮拖动 linearLayout!!.

    6.2K10

    Android实现悬浮全系统版本

    悬浮是在系统上显示的内容,好像微信视频聊天时的小窗口一样,在退出软件后依然存在的一个窗口,本博客以窗口中放一个button组件为例,简单展示悬浮,其中包括了对Android 6.0以下、Android...v.getId()){ case R.id.floating_btn : startFloatingButtonService(v); break; } } 思路简单解释:点击弹出悬浮按钮时...Build.VERSION.SDK_INT = Build.VERSION_CODES.M”如果系统版本在6.0以下这不需要请求权限,如果系统版本在6.0以上需要进行权限检测以及请求,获取权限后,弹出悬浮框...以下版本LayoutParam里的type变量TYPE_PHONE不一样,需要通过判断系统版本进行区分),然后定义并设置在layoutParams上面显示的Button按钮以及监听事件(此处的监听事件主要是悬浮窗口拖动的监听...源码下载地址:Android悬浮 源码下载 以上就是本文的全部内容,希望对大家的学习有所帮助。

    1.3K10

    Android免权限悬浮组件 - FloatingX

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

    2.4K21

    Android 实现可任意拖动的悬浮功能(类似悬浮球)

    最近开发项目中,有个在屏幕上任意拖动的悬浮功能,其实就是利用 WindowManager的api来完成这个需求,具体的实现的功能如下: 1.自定义view import android.content.Context...() - mOffsetToParentY); mWindowManager.updateViewLayout(RecordScreenView.this, mLayoutParams);//不断刷新悬浮的位置...savedInstanceState) { super.onCreate(savedInstanceState); if (Build.VERSION.SDK_INT = 23) { //设置中请求开启悬浮权限...android.intent.category.LAUNCHER" / </intent-filter </activity </manifest 总结 到此这篇关于Android 实现可任意拖动的悬浮功能...(类似悬浮球)的文章就介绍到这了,更多相关Android任意拖动的悬浮内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn!

    2.6K31

    HarmonyOS Next 悬浮拖拽和吸附动画

    介绍本示例使用position绝对定位实现应用内悬浮,并且通过animateTo结合curves动画曲线实现悬浮拖拽跟手和松手吸附边缘的弹性动画效果。...效果图预览使用说明按住悬浮可以拖拽,松开后悬浮自动靠左或靠右,如果悬浮超出内容区上下边界,自动吸附在边界位置。...aboutToAppear中获取应用窗口尺寸,使用窗口宽度减去悬浮宽度和右边距让悬浮初始靠右。...y轴偏移和设备顶部状态栏高度 }) break; }手指抬起时,通过判断悬浮中心在水平方向位于窗口中心的左侧或右侧设置悬浮靠左或靠右,如果悬浮超出内容区上下边界,则将悬浮设置在边界位置...,我想邀请你帮我三个小忙:点赞,转发,有你们的 『点赞和评论』,才是我创造的动力;关注小编,同时可以期待后续文章ing,不定期分享原创知识;想要获取更多完整鸿蒙最新学习知识点,关注B站:码牛课堂鸿蒙开发

    12120

    实战总结 Android 悬浮适配方案

    背景 ---- 游戏内的悬浮通常情况下只出现在游戏内,用做切换账号、客服中心等功能的快速入口。...本文将介绍几种实现方案,以及我们踩过的坑 方案一:应用外悬浮+栈顶权限/生命周期回调 ---- 通常实现悬浮,首先考虑到的会是要使用悬浮权限,用 WindowManager 在设备界面上 addView...实现( UI 层级较高,应用外显示) 1、弹出悬浮需要用到悬浮权限 2、判断悬浮游戏内外显示...但是这种方案有如下缺点: 适配问题,悬浮权限在不同设备上由于不同产商实现不同,适配难 向用户申请权限,打开率较低,体验较差 方案二:addContentView实现 ---- 原理:Activity

    1.3K10

    Android悬浮不用动态申请权限方法

    前言 前几天我刚写了一篇《Android实现移动的悬浮》的文章,需要在AndroidManifest.xml里的加上权限申请 ?...在度娘的帮助下,找到了下面这篇文章《Android无需权限显示悬浮, 兼谈逆向分析app》 由于无法超链接,这里贴上地址:https://www.jianshu.com/p/167fd5f47d5c...android4.3及以下的版本中,如果用TYPE_TOAST悬浮正常显示, 但不能接受触摸事件....---- 回到我们上次悬浮的代码 ? 我们把原来红框里面兼容android8,0版本的判断去掉,改为下面绿框里面的当api<19时用的TYPE_PHONE,否则是TYPE_TOAST....再运行程序即可实现不用动态申请上层权限即可实现android的悬浮效果了。 ---- -END-

    5K21
    领券