自定义悬浮窗口

这种悬浮窗口和PopupWindow有点像,但PoupWindow的声明周期只在开启的他的Acitivity里面,这个Activity挂掉了,他也跟着挂掉了,

而这种悬浮窗口是悬浮在安卓系统上的,最简单的自定义方法就是打开Toast的源码,抄一下里面的代码,然后改一改就可以了

Toast是不能获得焦点和不能被点击的的,要使这个悬浮窗口获得焦点并设置一些点击事件,

必须把WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE

            | WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE

这连个参数去掉

并把窗口的弹出类型设置成params.type = WindowManager.LayoutParams.TYPE_PRIORITY_PHONE;



<span style="font-size:24px;">wm=(WindowManager) getSystemService(WINDOW_SERVICE); 
params = new WindowManager.LayoutParams();
         params.height = WindowManager.LayoutParams.WRAP_CONTENT;
         params.width = WindowManager.LayoutParams.WRAP_CONTENT;
         params.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
              
                 | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON;
         params.format = PixelFormat.TRANSLUCENT;
         params.gravity=Gravity.LEFT|Gravity.TOP;
         
         //优先级电话用户界面,需要添加一个系统级的权限
         params.type = WindowManager.LayoutParams.TYPE_PRIORITY_PHONE;
         
         //设置弹出的窗口为Toast类型,特点是不能获得焦点
//         params.type=WindowManager.LayoutParams.TYPE_TOAST;
        		 
         //设置弹出窗口的位置,这个位置一Gravity的值为准
         params.x=sf.getInt("paramsX", 0);
         params.y=sf.getInt("paramsX", 0);
         wm.addView(v, params);</span>


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_15949077/article/details/46815583
个人分类: 自己总结
上一篇安卓安装一个程序的代码
下一篇安卓创建快捷图标的代码
想对作者说点什么? 我来说一句

视频聊天悬浮窗口切换效果

2017年09月25日 17.97MB 下载

可拖动的悬浮窗口

2015年07月12日 2.01MB 下载

实现窗口悬浮效果

2017年12月29日 717KB 下载

悬浮窗口

2011年02月13日 31KB 下载

mfc实现悬浮子窗口(动态实现)

2016年04月19日 42.76MB 下载

悬浮窗口实现

2013年08月05日 486KB 下载

Android悬浮窗口

2013年05月02日 787KB 下载

lytebox_v3.22.zip

2010年05月21日 39KB 下载

android悬浮窗口的实现

2016年07月15日 482KB 下载

没有更多推荐了,返回首页

关闭
关闭