我需要在现有法线(非全屏且可见)DialogFragment
之上显示 a 。
我需要全屏显示,因此我使用以下几行来实现该结果:Activity
ActionBar
DialogFragment
getDialog().getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN | WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
getDialog().getWindow().clearFlags(WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR);
在 ICS 上一切正常,我DialogFragment
的全屏显示,当我关闭它时,我的Activity
内容没有调整大小,因此没有布局故障(因为我设置的全屏标志应该只影响DialogFragment
所在的窗口) .
在 Jelly Bean 上,当我关闭时,我DialogFragment
看到我的Activity
内容已调整大小以覆盖状态栏,因此当它尝试返回原始大小时出现布局故障。
我认为这可能与新系统 UI 标志(SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
等)的引入有关,但我不知道如何在 Jelly Bean 上也具有相同的 ICS 行为......知道吗?