安卓获取状态栏(Status Bar)高度

方法一

在Android 6.0/9.0 frameworks系统源码中,可以查到status_bar_height只有一个定值24dp,
因此可以直接使用24dp
点击下载Android 9.0的frameworks/base/core/res目录源码
源码参见文件./frameworks/base/core/res/res/values/dimens.xml

注意 navigation_bar_height 可以直接用48dp,要想做好兼容不可直接用固定值,一些少见设备有其他值。
安卓获取状态栏(Status Bar)高度_第1张图片

方法二

获取系统中"status_bar_height"的值,方法如下

private int getStatusBarHeight() {
    Resources resources = mActivity.getResources();
    int resourceId = resources.getIdentifier("status_bar_height", "dimen","android");
    int height = resources.getDimensionPixelSize(resourceId);
    Log.v("dbw", "Status height:" + height);
    return height;
}

网上其他方法,不推荐使用

参考自 http://www.cnblogs.com/rossoneri/p/4142962.html

你可能感兴趣的:(Android,应用开发)