Window flag

参考了:https://blog.youkuaiyun.com/i_lovefish/article/details/8050025

1、防止锁屏(保持屏幕常量)

WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON

2、设置全屏

WindowManager.LayoutParams.FLAG_FULLSCREEN

3、恢复window非全屏显示

WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN

4、让该window所有东西都模糊

WindowManager.LayoutParams.FLAG_BLUR_BEHIND

5、让该window所有的东西都成暗淡

WindowManager.LayoutParams.FLAG_DIM_BEHIND

6、开启抖动

WindowManager.LayoutParams.FLAG_DITHER

7、开启当前Window的硬件加速

WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED

注:
该flag必须在设置你的Activity或Dialog的Content View之前进行设置,
而且如果你在mainfest文件中用android:hardwareAccelerated开启了该属性的话,那么你在程序中就不能再改变它。mainfest文件中android:hardwareAccelerated属性默认是开启的(“true”)。

8、Window占满整个手机屏幕,不留任何边界

WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN

9、设置Window可超出屏幕之外(这时部分内容在屏幕之外)

WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS

10、当前Window不接受触摸屏事件

WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE

11、禁止当前Window获得焦点(此Window获取不到外部事件)

WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE

13、禁止截屏

WindowManager.LayoutParams.FLAG_SECURE

14、锁屏时显示当前Window

WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
ps:设置方式主要有以下三种

1、通过Window的getAttributes()方法获取WindowManager.LayoutParams对象设置:

WindowManager.LayoutParams winParams = getWindow().getAttributes();
winParams.flags=winParams.flags|WindowManager.LayoutParams.FLAG_FULLSCREEN;

2、Window的addFlags(int flags)方法设置

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);

3、、Window的setFlags(int flags, int mask)方法设置

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值