1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Android获取状态栏 标题栏 屏幕高度

Android获取状态栏 标题栏 屏幕高度

时间:2023-07-18 17:52:43

相关推荐

Android获取状态栏 标题栏 屏幕高度

本文摘抄自:http://xqjay19910131-yahoo-/blog/1435249

1、获取状态栏高度

decorView是window中的最顶层view,可以从window中获取到decorView,然后decorView有个getWindowVisibleDisplayFrame方法可以获取到程序显示的区域,包括标题栏,但不包括状态栏。于是,我们就可以算出状态栏的高度了。

Rect frame = new Rect(); getWindow().getDecorView().getWindowVisibleDisplayFrame(frame); int statusBarHeight = frame.top;

2、获取标题栏高度

getWindow().findViewById(Window.ID_ANDROID_CONTENT)这个方法获取到的view就是程序不包括标题栏的部分,然后就可以知道标题栏的高度了。

int contentTop = getWindow().findViewById(Window.ID_ANDROID_CONTENT).getTop(); //statusBarHeight是上面所求的状态栏的高度 int titleBarHeight = contentTop - statusBarHeight

3、获取屏幕高度

方法1:

WindowManager windowManager = getWindowManager(); Display display = windowManager.getDefaultDisplay(); screenWidth = display.getWidth(); screenHeight = display.getHeight();

方法2:

DisplayMetrics dm = new DisplayMetrics(); this.getWindowManager().getDefaultDisplay().getMetrics(dm);//this指当前activity screenWidth =dm.widthPixels; screenHeight =dm.heightPixels;

以上两种方法在屏幕未显示的时候,还是处于0的状态,即要在setContentView调用之后才有效。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。