Open DannyCheung opened 7 years ago
isKeyboardShowing = actionBarOverlayLayoutHeight > displayHeight; 这句会一直为true,超出一个NavigationBar高度; 这里我简单处理为: // 以下是我新增的代码,但hasPermanentMenuKey一直返回false,所以对于没有虚拟键盘的手机也会多减naviHeight的值,虽然也能正确判断键盘被收起,但不完美(原来键盘收起时actionBarOverlayLayoutHeight == displayHeight,看作者能否更优雅的处理呢) int naviHeight = 0; Resources resources = getContext().getResources(); int resourceId = resources.getIdentifier("navigation_bar_height", "dimen", "android"); if (resourceId > 0 && !ViewConfiguration.get(getContext()).hasPermanentMenuKey()) { naviHeight = resources.getDimensionPixelSize(resourceId); }
final int actionBarOverlayLayoutHeight = actionBarOverlayLayout.getHeight() - actionBarOverlayLayout.getPaddingTop() - naviHeight;
我的联系方式qq/wechat: 105636147
isKeyboardShowing = actionBarOverlayLayoutHeight > displayHeight; 这句会一直为true,超出一个NavigationBar高度; 这里我简单处理为: // 以下是我新增的代码,但hasPermanentMenuKey一直返回false,所以对于没有虚拟键盘的手机也会多减naviHeight的值,虽然也能正确判断键盘被收起,但不完美(原来键盘收起时actionBarOverlayLayoutHeight == displayHeight,看作者能否更优雅的处理呢) int naviHeight = 0; Resources resources = getContext().getResources(); int resourceId = resources.getIdentifier("navigation_bar_height", "dimen", "android"); if (resourceId > 0 && !ViewConfiguration.get(getContext()).hasPermanentMenuKey()) { naviHeight = resources.getDimensionPixelSize(resourceId); }
final int actionBarOverlayLayoutHeight = actionBarOverlayLayout.getHeight() - actionBarOverlayLayout.getPaddingTop() - naviHeight;
我的联系方式qq/wechat: 105636147