我遇到问题,必须在全屏模式下输入活动/片段(如果用户展开视图)。
通过使用以下代码,这实际上可以(几乎)在所有设备上运行:
decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN);
但是,某种程度上,HUAWEI P20并非如此。它隐藏状态栏,但是有一个空格,底部内容与底部导航重叠。
在其他设备上,它可以正确显示(全屏,无空格)。
我尝试在任何可能的地方使用
android:fitsSystemWindows="true"
,但没有任何办法可以解决此问题。编辑:
我实际上也隐藏了工具栏,但是该部分在所有设备(包括华为P20)上都能正常工作。唯一的问题是Huawei P20的状态栏。
有什么建议么?
照片:
最佳答案
可能是您忘了添加两条额外的线。
ActionBar actionBar = getActionBar();
actionBar.hide();
您可以使用
manifest.xml
,将主题添加到目标活动中。<application
...
android:theme="@android:style/Theme.Holo.NoActionBar.Fullscreen" >
...
</application>
或者,您可以通过编程进行设置。
if (Build.VERSION.SDK_INT < 16) {
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
else
{
View decorView = getWindow().getDecorView();
// Hide the status bar.
int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);
// Remember that you should never show the action bar if the
// status bar is hidden, so hide that too if necessary.
ActionBar actionBar = getActionBar();
actionBar.hide();
}
有关更多信息,请阅读android documentation。