我有一个MainActivity
有很多Fragment
s并且在一个特定的片段中我想在系统栏后面绘制,所以我在运行时应用以下标志:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
getActivity().getWindow().setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
}
我现在想要的是当用户退出此Fragment
并输入另一个以删除该标志时,状态栏后面没有内容。我尝试将null作为参数传递给setFlags()
方法,但这会产生错误。我搜索了remove()
或unSet()
方法,但都不存在。那么我该如何删除另一个Fragment
的那个标志呢?
答案 0 :(得分:2)
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
答案 1 :(得分:0)
由于您使用的是Fragment
-
你应该去 -
getActivtiy().getWindow().clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);