Android 获取状态栏高度错误不一致

一、序言
在Android 7.0以上增加了全面屏适配导致状态栏高度不一致,使用同样的方法在高低版本不一致
二、方法一:

 /**
     * 获取状态栏高度
     * @return
     */
    public static int getStatueBarHeight2() {
        int result = 0;
        int resourceId = Resources.getSystem().getIdentifier("status_bar_height", "dimen",
                "android");
        if (resourceId > 0) {
            result = Resources.getSystem().getDimensionPixelSize(resourceId);
        }
        return result;
    }

此方法获取的高度是48px
方法二:

    /**
     * 获取状态栏高度
     *
     * @param context
     * @return
     */
    public static int getStatueBarHeight(Context context) {
        int result = 0;
        int resourceId = context.getResources().getIdentifier("status_bar_height", "dimen",
                "android");
        if (resourceId > 0) {
            result = context.getResources().getDimensionPixelSize(resourceId);
        }
        return result;
    }

此方法获取的高度是60px

你可能感兴趣的:(Android 获取状态栏高度错误不一致)