【发布时间】:2018-09-07 02:42:55
【问题描述】:
我使用沉浸式粘性模式隐藏导航栏和操作栏:
@TargetApi(19)
private void setImmersiveMode() {
if (Build.VERSION.SDK_INT >= 19) {
View decorView = getWindow().getDecorView();
int uiOptions = getImmersiveUiOptions(decorView);
decorView.setSystemUiVisibility(uiOptions);
ActionBar actionBar = getActionBar();
if (null!=actionBar) {
actionBar.hide();
}
}
}
触摸Spinner 时,会显示navigationBar 并禁用沉浸式模式。
This solution 适用于对话框:
dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE);
dialog.show();
dialog.getWindow().getDecorView().setSystemUiVisibility(
context.getWindow().getDecorView().getSystemUiVisibility());
dialog.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE);
但是Spinner 没有我可以覆盖的show() 方法。
如何防止在触摸 Spinner 时显示系统 UI?
编辑:这个问题是关于隐藏导航栏(BackButton、HomeButton 和RecentTasksButton)。我已经在使用FLAG_FULLSCREEN
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
【问题讨论】:
标签: android android-spinner android-immersive