【问题标题】:Android Navigation Bar overlaying my view覆盖我的视图的 Android 导航栏
【发布时间】:2014-08-24 11:15:45
【问题描述】:

我在 Nexus 等设备上遇到了 Android 导航栏问题。只是在所有没有硬件菜单按钮的设备上。

让我更详细地解释这个问题。

我有一个包含 3 个部分的应用程序。内容、ActionBar 和带有 SeekBar 的底部面板。

ActionBar 和带有 SeekBar 的底部面板覆盖了内容。每次我单击内容时,带有 SeekBar 的 ActionBar 和底部面板都会消失。这正是它必须工作的方式。这是我用来隐藏系统 UI 的代码片段:

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) {                
            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);
} else {                
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
    actionBar.hide();
}
findViewById(R.id.read_book_bottom_bar).setVisibility(View.GONE);

在我活动的onCreate 方法中,我有这段代码:

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) {            
    getWindow().requestFeature(Window.FEATURE_ACTION_BAR_OVERLAY);          
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_OVERSCAN);   
}

但是,当我在带有 Android 导航栏的设备上启动应用程序时,在使用 SeekBar 显示底部面板时出现问题。简单地说,Android 导航栏用 SeekBar 覆盖底部面板。这是截图:

但是每次我点击内容时,Android Navigation Bar 和 ActionBar 一起消失,底部面板和 SeekBar 一起消失。所以,问题是,每次有人想在 NEXUS 等设备上使用带有 SeekBar 的底部面板时,他/她将无法使用它,因为它隐藏在 Android 导航栏下。

谁能帮我解决这个问题?提前谢谢大家。

【问题讨论】:

    标签: android overlay navigationbar


    【解决方案1】:

    最后我用fitsSystemWindows = true属性解决了。

    【讨论】:

    • 除此之外,尝试使用填充而不是边距。在某些情况下可能会有所帮助。
    【解决方案2】:

    当您设置android:layout_gravity="center"android:layout_marginTop="30dp" 时也可能发生这种情况 我通过设置 android:layout_gravity="center_horizontal" 解决了类似的问题。然后 marginTop 按假设工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-21
      • 2015-08-27
      • 1970-01-01
      • 2021-05-08
      • 2022-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多