我有一些代码(android源代码),我试图设置LayoutParam
首先,我有这个
mLayoutParams = new WindowManager.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
height,
WindowManager.LayoutParams.TYPE_STATUS_BAR,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
| WindowManager.LayoutParams.FLAG_TOUCHABLE_WHEN_WAKING
| WindowManager.LayoutParams.FLAG_SPLIT_TOUCH,
// Setup statusbar transparency preference
mOpacity != 100 ? PixelFormat.TRANSPARENT : PixelFormat.RGB_565);
然后我注册一个SettingsObserver,用于重新加载mOpacity,但如果我将Opacity设置回100,则不会RGB_565
,因为LayoutParams
已定义TRANSPARENT
格式。我想知道是否有某种方法来设置这个独立的,因为如果我添加到整个代码的观察者,它最终会创建无限Layouts
,并覆盖它们。另一个有用的事情是如何在创建一个新的One之前销毁mLayoutParams。
先谢谢。
答案 0 :(得分:0)
非常容易修复。 我刚换了
mOpacity != 100 ? PixelFormat.TRANSPARENT : PixelFormat.RGB_565
仅限
PixelFormat.TRANSPARENT
然后,当我想设置100%不透明度时,我只发送了一个等于100的十六进制值:)