1)当前显示的view直接获取当前view的宽高;
2)通过Activity的getWindow().findViewById(Window.ID_ANDROID_CONTENT)获取系统当前显示的view根(是一个framelayout对象),android绘制会将要绘制的view放置在framelayout中绘制。
二、通过Display对象获取屏幕高宽:
获取display对象Activity的中的getWindowManager().getDefaultDisplay()
getWidth();//返回显示界面宽度即屏幕宽度
getHeight();//返回显示界面高度即屏幕高度
由display对象设置DisplayMetrics宽高值,通过DisplayMetrics对象获取屏幕高宽,有点多此一举:
getWidth();//返回显示界面宽度即屏幕宽度
getHeight();//返回显示界面高度即屏幕高度
常用一些值计算:
屏幕宽高:Canvas对象,display对象和DisplayMetrics可获取屏幕的高宽
状态栏高度:view的getWindowVisibleDisplayFrame(Rect outRect)赋值outRect后,outRect.top()即是状态栏高度
标题高度:View的getWindowVisibleDisplayFrame(Rect outRect)赋值outRect后,outRect.height()--view.getHeight()即是标题高度。