Android笔记(九):获取屏幕高度,状态栏高度,虚拟导航栏高度

通过getWindow().getDecorView().getHeight()或者

DisplayMetrics metrics = new DisplayMetrics();

getWindowManager().getDefaultDisplay().getRealMetrics(metrics);

 int realHeight = metrics.heightPixels; 可以获取屏幕像素高度

Android笔记(九):获取屏幕高度,状态栏高度,虚拟导航栏高度

如果有虚拟键盘弹出,则getWindowVisibleDisplayFrame()方法中的rect.bottom应减去键盘高度。

getWindowManager().getDefaultDisplay().getMetrics(metrics);

 int usableHeight = metrics.heightPixels;  //跟rect.bottom的值一样

虚拟导航栏高度: realHeight - usableHeight

状态栏高度:rect.top