版权声明:本文为博主原创文章,未经博主允许欢迎转载。 https://blog.csdn.net/paulkg12/article/details/87890260
ref
https://blog.csdn.net/v2810769/article/details/77920885
note
//1、通过WindowManager获取
DisplayMetrics dm = new DisplayMetrics();
heigth = dm.heightPixels;
width = dm.widthPixels;
//2、通过Resources获取
DisplayMetrics dm = getResources().getDisplayMetrics();
heigth = dm.heightPixels;
width = dm.widthPixels;
//3、获取屏幕的默认分辨率
Display display = getWindowManager().getDefaultDisplay();
heigth = display.getWidth();
width = display.getHeight();
//4、通过类直接取
getWindowManager().getDefaultDisplay().getMetrics(dm);
第一种和第三种都是使用getWindowManager()得到的,但这个是建立在类Activity上的,如果自己的类没有继承这两个,则取不到数据,故个人认为通过Resources获取最好
or
WindowManager manager = this.getWindowManager();
DisplayMetrics outMetrics = new DisplayMetrics();
manager.getDefaultDisplay().getMetrics(outMetrics);
int width = outMetrics.widthPixels;
int height = outMetrics.heightPixels;
然后你可以使用Constants 类保存一些常量
class Constants {
static int middleScreenX = 520;
static int bottomY = 1920;
}
// 在起始aty 中
WindowManager manager = this.getWindowManager();
DisplayMetrics outMetrics = new DisplayMetrics();
manager.getDefaultDisplay().getMetrics(outMetrics);
int width = outMetrics.widthPixels;
int height = outMetrics.heightPixels;
Constants.middleScreenX = width / 2;
Constants.bottomY = height;
在其他类中使用