Android获取状态栏、标题栏、屏幕高度
2014-07-30 14:56
387 查看
本文摘抄自:/article/4175173.html
1、获取状态栏高度
decorView是window中的最顶层view,可以从window中获取到decorView,然后decorView有个getWindowVisibleDisplayFrame方法可以获取到程序显示的区域,包括标题栏,但不包括状态栏。于是,我们就可以算出状态栏的高度了。
2、获取标题栏高度
getWindow().findViewById(Window.ID_ANDROID_CONTENT)这个方法获取到的view就是程序不包括标题栏的部分,然后就可以知道标题栏的高度了。
3、获取屏幕高度
方法1:
方法2:
以上两种方法在屏幕未显示的时候,还是处于0的状态,即要在setContentView调用之后才有效。
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调用之后才有效。
相关文章推荐
- android获取控件位置坐标,屏幕尺寸,标题栏,状态栏高度
- Android中获取屏幕相关信息(屏幕大小,状态栏、标题栏高度)
- Android--获取标题栏,状态栏,屏幕高度
- Android 获取屏幕宽高,状态栏,标题栏高度
- Android中获取屏幕相关信息(屏幕大小,状态栏、标题栏高度)
- Android中获取屏幕相关信息(屏幕大小,状态栏、标题栏高度)
- Android获取状态栏、标题栏、ActionBar以及屏幕的高度
- Android中获取屏幕相关信息(屏幕大小,状态栏、标题栏高度)
- Android中获取屏幕相关信息(屏幕大小,状态栏、标题栏高度)
- Android获取标题栏、状态栏的高度、屏幕大小、模拟Home键
- Android 获取 屏幕状态栏高度和标题栏高度 避免出现0的情况
- android 获取控件位置坐标,屏幕尺寸,标题栏,状态栏高度
- Android获取屏幕高度、状态栏高度、标题栏高度
- Android获取控件位置坐标,屏幕尺寸,标题栏,状态栏高度
- Android获取屏幕高度、状态栏高度、标题栏高度
- Android获取屏幕高度、状态栏高度、标题栏高度
- Android获取屏幕、标题栏、状态栏高度
- Android编程实现获取标题栏、状态栏的高度、屏幕大小及模拟Home键的方法
- android获取控件位置坐标,屏幕尺寸,标题栏,状态栏高度
- Android--获取标题栏,状态栏,屏幕高度