//获取顶部status bar 高度
private int getStatusBarHeight() {
Resources resources = mActivity.getResources();
int resourceId = resources.getIdentifier("status_bar_height", "dimen","android");
int height = resources.getDimensionPixelSize(resourceId);
return height;
}
private int getStatusBarHeight2() {
Rect frame = new Rect();
getWindow().getDecorView().getWindowVisibleDisplayFrame(frame);
int statusBarHeight = frame.top; //状态栏高度
return statusBarHeight;
}
//导航栏的高度计算可以这么计算:
Resources resources = getResources(); int resourceId = resources.getIdentifier("navigation_bar_height","dimen", "android"); int height = resources.getDimensionPixelSize(resourceId); Log.i("info", "底部导航栏高: " + height);
备注:获取状态栏高度时,方法2可以在view.post方法中获取高度,否则获取不到