【发布时间】:2016-02-02 06:20:33
【问题描述】:
我正在尝试制作一个在横向上完全全屏的活动,并在纵向上显示状态栏和导航按钮。 我必须能够以编程方式执行此操作。
这就是我尝试让应用全屏显示的方法。
private void hideNavigationAndStatusBars(){
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS | WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); // these work only on API 21 and above
View decorView = getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);
}
问题如下:
- 在某些设备上,我在屏幕顶部看到一个空白部分,它等于状态栏的高度,即使状态栏没有显示
- 在其他设备上,activity填满了整个屏幕,但是当我点击任何东西时,会出现状态栏和导航栏,它们会调整布局大小,看起来很丑
我想要达到的目标:
Activity 应该横向填满整个屏幕,如果它们出现的话,位于状态栏和导航栏的后面
当用户点击屏幕时,他/她应该与屏幕进行交互。相反,第一次单击会显示状态和导航栏,并且只有在此之后才能进行交互
状态栏应该只在用户从顶部拖动时出现
【问题讨论】:
标签: android landscape android-fullscreen android-statusbar