返回
一文搞懂Android屏幕尺寸,轻松获取设备参数
Android
2024-02-09 06:40:37
在Android开发中,获取设备屏幕尺寸是一个常见需求,尤其是当我们需要根据屏幕尺寸调整UI布局时。本文将详细介绍如何在Android中获取屏幕尺寸参数,包括屏幕宽高、导航栏高度和状态栏高度。
- 屏幕宽高
获取屏幕宽高的代码如下:
// 获取屏幕宽度(像素)
int screenWidth = getWindowManager().getDefaultDisplay().getWidth();
// 获取屏幕高度(像素)
int screenHeight = getWindowManager().getDefaultDisplay().getHeight();
- 导航栏高度
获取导航栏高度的代码如下:
// 获取导航栏高度(像素)
int navigationBarHeight = 0;
Resources resources = getResources();
int resourceId = resources.getIdentifier("navigation_bar_height", "dimen", "android");
if (resourceId > 0) {
navigationBarHeight = resources.getDimensionPixelSize(resourceId);
}
- 状态栏高度
获取状态栏高度的代码如下:
// 获取状态栏高度(像素)
int statusBarHeight = 0;
Resources resources = getResources();
int resourceId = resources.getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0) {
statusBarHeight = resources.getDimensionPixelSize(resourceId);
}
- 使用示例
以下是一个使用示例,展示了如何获取屏幕宽高、导航栏高度和状态栏高度:
// 获取屏幕宽度(像素)
int screenWidth = getWindowManager().getDefaultDisplay().getWidth();
// 获取屏幕高度(像素)
int screenHeight = getWindowManager().getDefaultDisplay().getHeight();
// 获取导航栏高度(像素)
int navigationBarHeight = 0;
Resources resources = getResources();
int resourceId = resources.getIdentifier("navigation_bar_height", "dimen", "android");
if (resourceId > 0) {
navigationBarHeight = resources.getDimensionPixelSize(resourceId);
}
// 获取状态栏高度(像素)
int statusBarHeight = 0;
resources = getResources();
resourceId = resources.getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0) {
statusBarHeight = resources.getDimensionPixelSize(resourceId);
}
// 输出结果
Log.d("MainActivity", "屏幕宽度:" + screenWidth);
Log.d("MainActivity", "屏幕高度:" + screenHeight);
Log.d("MainActivity", "导航栏高度:" + navigationBarHeight);
Log.d("MainActivity", "状态栏高度:" + statusBarHeight);
希望本文能帮助您轻松获取Android设备屏幕尺寸相关信息。如果您有任何问题,请随时留言。