如何删除底部屏幕上的按钮栏

问题描述 投票:21回答:10

我正在建立自定义image.I通过android源码,我想摆脱android中的底部软键按钮栏,有人可以指导我源文件更改吗?

android
10个回答
26
投票

要启用/禁用它们,据我所知您只需编辑build.prop:

qemu.hw.mainkeys=0 (show on screen buttons)

要么

qemu.hw.mainkeys=1 (disable on screen buttons)

如果build.prop中不存在该行,请将其添加到底部。


0
投票

如果隐藏导航栏,有没有办法将控件拉伸到屏幕底部?我有一个ImageView,其高度设置为match_parent,但缺少的导航栏留下一个黑色矩形。


8
投票

但是,您无法永久隐藏它:

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);

此代码隐藏软键,直到用户与您的应用交互。这是故意以这种方式设计的,想象一下,你没有提供退出当前屏幕和隐藏theese键的任何手段,用户将被“困”在一个单向的死胡同里。

你可以找到更多here


7
投票

在没有底部导航栏的情况下拍摄屏幕截图的最简单方法是使用模拟器(AVD)并编辑其配置文件。

转到.android / avd / virtual-device.avd

然后编辑config.ini:

hw.mainKeys=yes
hw.keyboard=yes

两者都应该设置为“是”

为了能够再次看到该栏,请将它们设置为“否”。


5
投票
getWindow().getDecorView().setSystemUiVisibility(
                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
                | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); 

在onCreate中使用此代码。但这要求api lv超过19。


4
投票

除了Aykut Burak SAFAK上面的回答,你可以将他的代码放在onWindowFocusChanged事件中以确保每当Activity获得焦点时(例如在解锁后)它保持全屏而没有软键状态。

@Override
public void onWindowFocusChanged(boolean hasFocus){
    super.onWindowFocusChanged(hasFocus);
    getWindow().getDecorView().setSystemUiVisibility(
            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
                    | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
}

3
投票

随着三星推出新的SureLock,底部栏可以被禁用或隐藏,而无需设备的生根。您所要做的就是为三星安装SureLock Lockdown并按照以下站点中提到的步骤进行操作,

http://www.42gears.com/blog/2013/07/disablehide-android-bottom-bar-without-rooting-samsung-galaxy-tablets/

查看以下链接。它可以帮助您理解它。

http://www.42gears.com/blog/2012/02/disable-bottom-bar-in-android-honeycomb-tablets-with-surelock/


1
投票

如果您只想让导航栏(按钮栏)更少分散注意力,请尝试使用youractivity.getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LOW_PROFILE)


0
投票

我认为这是可能的

隐藏软键试试getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);但它不适用于平板电脑4+。


0
投票

是的,你可以在你的活动中使用它:

@Override
public void onWindowFocusChanged(boolean hasFocus) {
        super.onWindowFocusChanged(hasFocus);
    if (hasFocus) {
        decorView.setSystemUiVisibility(
                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
                | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);}
}
© www.soinside.com 2019 - 2024. All rights reserved.