我想获取屏幕尺寸,我使用的是 API 级别 10 的设备。我使用 Display
获取宽度和高度,但我收到一条消息Eclipse 认为这已被弃用。一种更好更新的方法是对具有较新 API 的应用程序使用 DisplayMetrics
,但 API 10 中不支持 DisplayMetrics
。我应该如何处理这个问题问题?
旧(已弃用)
Display display = getWindowManager().getDefaultDisplay();
screenWidth = display.getWidth();
screenHeight = display.getHeight();
新
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
metrics.heightPixels;
metrics.widthPixels;
最佳答案
只需像这样检查 API 级别:
int screenWidth = 0;
int screenHeight = 0;
if(android.os.Build.VERSION.SDK_INT < 10) {
Display display = getWindowManager().getDefaultDisplay();
screenWidth = display.getWidth();
screenHeight = display.getHeight();
} else {
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
screenWidth = metrics.widthPixels;
screenHeight = metrics.heightPixels;
}
但是DisplayMetrics
在 API 级别 1
中添加。所以实际上你只需要 else 子句。
关于android - API 级别 10 及以后的屏幕尺寸?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18350778/