andorid: 获取屏幕的宽高,中心位置

版权声明:本文为博主原创文章,未经博主允许欢迎转载。 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;

在其他类中使用

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/paulkg12/article/details/87890260