Android 判断手机是否有虚拟按键

public static boolean checkDeviceHasNavigationBar2(Activity activity) {
    //通过判断设备是否有返回键、菜单键(不是虚拟键,是手机屏幕外的按键)来确定是否有navigation bar
    boolean hasMenuKey = ViewConfiguration.get(activity)
            .hasPermanentMenuKey();
    boolean hasBackKey = KeyCharacterMap
            .deviceHasKey(KeyEvent.KEYCODE_BACK);

    if (!hasMenuKey && !hasBackKey) {
        // 没有虚拟按键返回 true
        return true;
    }
    // 有虚拟按键返回 false
    return false;
}

你可能感兴趣的:(安卓控件)