【问题标题】:How can I hide app's name in Android when using a theme with no action bar?使用没有操作栏的主题时,如何在 Android 中隐藏应用程序的名称?
【发布时间】:2020-10-25 23:43:55
【问题描述】:
app_name 出于某种原因出现在左上角。为什么?见这里:
emulator screenshot
我的应用全屏运行并隐藏 UI 元素,例如操作栏。应用程序中仅有的两个组件是约束视图和显示单词“voluble”的中心 textView。
我能想象的唯一可能导致此问题的是应用程序的父主题,即 Theme.MaterialComponents.DayNight.NoActionBar。但我仍然无法找到如何防止这种情况发生或为什么会发生这种情况。
【问题讨论】:
标签:
java
android
material-design
【解决方案1】:
我想通了。
我使用这个函数来隐藏 UI 元素:
public void fullScreenCall() {
View decorView = getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
| View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);
}
我打电话的来源:
@Override
protected void onResume() {
super.onResume();
fullScreenCall();
}
将这个添加到 fullScreenCall 函数的 uiOptions 修复它出于某种原因:
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
最终工作代码:
public void fullScreenCall() {
View decorView = getWindow().getDecorView();
int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
| View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(uiOptions);
}