Dap*_*app 5 user-interface android android-fragments
我正在编写一个应用程序,它有一个活动和一堆片段,其中一个片段是全屏的。为了实现这一点,我正在尝试使用系统 UI 可见性标志。
对于全屏片段,我设置了可见性:
layout.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION);
Run Code Online (Sandbox Code Playgroud)
一旦我这样做,窗口插图就会更改为似乎没有任何意义的值。然后,当我退出那个全屏片段时,我的视图中出现了错误的填充(基于奇怪的插图)
有谁知道这里发生了什么?我理解窗口插图的方式一定是错误的,因为这种行为似乎完全违反直觉。任何见解将不胜感激。
要查看我为说明问题而编写的测试应用程序的完整源代码,请访问此处:
setSystemUiVisibility()传播系统 UI 可见性更改视图层次结构(以请求新的插图)。
但是,当您调用layout.setSystemUiVisibility()Fragment时onCreateView(),layout尚未附加到视图层次结构。这就是导致您的插图未正确更新的问题的原因。
您可以改为调用getActivity().getWindow().getDecorView().setSystemUiVisibility(),onCreateView()您会发现所有插图都正常工作。
| 归档时间: |
|
| 查看次数: |
2134 次 |
| 最近记录: |