Android NavigationBar问题处理的方法

2020-10-24 15:28:25 浏览数 (2)

如图,现在全面屏手机下面的 按钮在屏幕上,如果做沉浸式的话,下面的菜单会沉入NavigationBar下方,造成重叠。

样品机为华为.png

下面是解决办法:

代码语言:javascript复制
getWindow().getDecorView().findViewById(android.R.id.content).setPadding(0, 0, 0, getNavigationBarHeight());

public int getNavigationBarHeight() {
    boolean hasMenuKey = ViewConfiguration.get(this).hasPermanentMenuKey();
    boolean hasBackKey = KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_BACK);
    if (!hasMenuKey && !hasBackKey) {
      Resources resources = getResources();
      int resourceId = resources.getIdentifier("navigation_bar_height", "dimen", "android");
      //获取NavigationBar的高度
      int height = resources.getDimensionPixelSize(resourceId);
      return height;
    } else {
      return 0;
    }
  }

由于工作原因,暂时做简单记录,有空会进行深入分析!

以上就是本文的全部内容,希望对大家的学习有所帮助。

0 人点赞