java - 隐藏按钮返回、主页、Android 应用程序
问题描述
我无法正确实现如何隐藏位于底部/页脚的按钮。返回、主页、应用程序这 3 个按钮。我正在实现这段代码,它工作正常,它隐藏了顶部导航栏和页脚。但问题是当我单击出现虚拟键盘的 EditText 时。完成您要编写的内容后,返回、主页、应用程序 3 个按钮。它们又回来了。我需要实施什么?我究竟做错了什么?
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (hasFocus) {
hideSystemUI();
}
}
private void hideSystemUI() {
View decorView = getWindow().getDecorView();
decorView.setSystemUiVisibility(
View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN);
}
解决方案
只需将视图返回到侦听器onCreate
!一旦我实现了这段代码。我给你这个样本:
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
View decorView = hideSystemUI();
decorView.setOnSystemUiVisibilityChangeListener(new
View.OnSystemUiVisibilityChangeListener() {
@Override
public void onSystemUiVisibilityChange(int visibility) {
hideSystemUI();
}
});
}
private View hideSystemUI() {
View decorView = getWindow().getDecorView();
decorView.setSystemUiVisibility(
View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN);
return decorview;
}
推荐阅读
- java - 启动一个从字符串数组获取字符数组的列表
- javascript - 尽管有可用源,但“无法读取 null 的属性‘textContent’”,如何让“newItem”呈现?
- django - 当用户在创建组时选择一个类别时,Django 不会将其发布到数据库中
- android - 从 .xml 文件中获取原始维度
- javascript - 角度将输入值设置为对象
- javascript - 使用 IOS 模拟器的 expo cli 问题
- html - 从 new FormData() 创建新数组,然后使用 Angular HttpClient 发送到服务器
- javascript - reveal.js 与 plotly.js 和 chart.js 导出 pdf
- html - 如何确定移动浏览器中的实际视口/窗口高度?
- game-development - 无法使用 get_node() 定位子标签(GD 脚本)