Android获得屏幕的宽度和高度的4种方法

2018-04-09  本文已影响34人  小小程序员jh
方法一:
        WindowManager wm = (WindowManager) this
                .getSystemService(Context.WINDOW_SERVICE);
        int width = wm.getDefaultDisplay().getWidth();
        int height = wm.getDefaultDisplay().getHeight();
方法二:
        WindowManager wm1 = this.getWindowManager();
        int width1 = wm1.getDefaultDisplay().getWidth();
        int height1 = wm1.getDefaultDisplay().getHeight();
        方法一与方法二获取屏幕宽度的方法类似,只是获取WindowManager 对象时的途径不同。

方法三:
        WindowManager manager = this.getWindowManager();
        DisplayMetrics outMetrics = new DisplayMetrics();
        manager.getDefaultDisplay().getMetrics(outMetrics);
        int width = outMetrics.widthPixels;
        int height = outMetrics.heightPixels;
方法四:
        Resources resources = this.getResources();
        DisplayMetrics dm = resources.getDisplayMetrics();
        float density = dm.density;
        int width = dm.widthPixels;
        int height = dm.heightPixels;

第一种和第三种都是使用getWindowManager()得到的,但这个是建立在类Activity上的,如果自己的类没有继承这两个,则取不到数据,故个人认为通过Resources获取最好。

上一篇 下一篇

猜你喜欢

热点阅读