Window.setFlags方法有2个参数
比如,设置不熄屏
getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
我看sdk,这2个参数解释如下:
flags
The new window flags (see WindowManager.LayoutParams).
mask
Which of the window flag bits to modify.
不知道这第二个mask是干什么的?看解释是修改?没明白
------解决方案--------------------
在该函数的实现中
attrs.flags = (attrs.flags&~mask)
------解决方案--------------------
(flags&mask);
指出了mask是要跟flag相与或者mask取反相与。
还有一处 mForcedWindowFlags
------解决方案--------------------
= mask;
个人觉得楼主不必执着于细节实现,知道怎么用就行了。