项目需要设一个popupwindow来覆盖整个屏幕,需要先获取这个Activity的宽和高来为popupwindow设置值。
使用了网上已知的好几种方法,发现高度总是少了那么点。(实际高度640,log打出来的是592)
在网上找了找相关问题,在这里找到了问题所在 Android获取屏幕高度的坑。
我使用的设备是全面屏设备,会用到虚拟按键,但app是使用的全屏模式,因此当时忘记了获取高度为去掉虚拟按键的高度。
getMetric()方法只能获取到可用的高度,因此会减掉虚拟按键高度,得到的是592。(发现了虚拟按键高度为48)
getRealMetric()方法获取真实高度,建议以后没有特殊需求的话,获取高度就使用这个方法。
//Get Window's Width and Height
DisplayMetrics displayMetrics = new DisplayMetrics();
DateSettingActivity.th