Android获取屏幕的实际分辨率

最近用到屏幕的分辨率,按照网上的方法(千篇一律),获取到的分辨率都不含状态栏。

比如:

屏幕实际分辨率:1280 x 800
获取到不含状态栏的就是:1280 x 764
而且,如果状态栏在底部,状态栏的高度也无法获取到。

经过半个上午纠缠,发现Android本身提供了获取屏幕实际分辨率的方法(API level >= 17):
/**
 * Gets display metrics based on the real size of this display.
 */
sdk/sources/android-23/android/view/Display.java
public void getRealMetrics(DisplayMetrics outMetrics)

于是,获取屏幕实际分辨率的方法是:

DisplayMetrics metrics =new DisplayMetrics
/**
 * getRealMetrics - 屏幕的原始尺寸,即包含状态栏。
 * version >= 4.2.2
 */();
getWindowManager().getDefaultDisplay().getRealMetrics(metrics);
int width = metrics.widthPixels;
int height = metrics.heightPixels;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值