这篇文章主要介绍了Android视频悬浮窗口实现的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
前言
本文例子实现了点击显示悬浮窗口,同时窗口可播放视频,拖动位置,点击关闭及返回 APP
页面,通过例子来讲述悬浮窗口实现原理及细节处理,效果图如下所示:
悬浮窗口.gif
原理
WindowManager
对 View
视图进行添加、移除、更新处理;
WindowManager.LayoutParams
对窗口参数进行一系列设置。
实现
首先,需要添加相对应悬浮窗权限:
在 Activity
页面中,需要判断悬浮窗权限是否获取,如果未曾获取,需要跳转系统页,进行对应的授权操作:
获取权限后,我们可以首先初始化我们要显示的视图,并且设置相对应的事件,这里我们采用了 VideoView
进行简单的视频播放,并且设置悬浮窗关闭及返回前台的操作:
通过获取窗口管理 WindowManager
,设置悬浮窗口参数 WindowManager.LayoutParams
后,就可以通过 WindowManager
的 addView
方法,生成对应视图的悬浮窗口:
WindowManager.LayoutParams
参数设置,主要设置悬浮窗口类型为 WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY
:
窗口触摸移动事件,主要通过获取触摸位置,通过 WindowManager
的 updateViewLayout
方法设置悬浮窗口的参数,进行窗口视图位置更新:
关闭悬浮窗,调用 WindowManager
的 removeView
方法即可:
悬浮窗点击返回前台方法:
关于悬浮窗的一些基本操作到这里就基本结束了,具体的布局内容及操作,欢迎查看具体的源码实现: Github开发记录
到此这篇关于Android视频悬浮窗口实现的示例代码的文章就介绍到这了,更多相关Android视频悬浮窗口 内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!