获得手机屏幕的宽度

如果你是在Activity中获得使用下面的代码可以获得手机屏幕的信息

DisplayMetrics dm = new DisplayMetrics();
//获取屏幕信息
        getWindowManager().getDefaultDisplay().getMetrics(dm);

        int screenWidth = dm.widthPixels;

        int screenHeigh = dm.heightPixels;

如果你不是在activity中想要获得手机屏幕信息,可以使用如下方法

WindowManager wm = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();
display.getSize(size);
int width = size.x;
int height = size.y;

 方法验证

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_main);
        DisplayMetrics dm = new DisplayMetrics();
        //获取屏幕信息
                getWindowManager().getDefaultDisplay().getMetrics(dm);

                int screenWidth = dm.widthPixels;

                int screenHeigh = dm.heightPixels;
                Point size = new Point();
                WindowManager wm = (WindowManager) this.getSystemService(Context.WINDOW_SERVICE);
                Display display = wm.getDefaultDisplay();
                display.getSize(size);
                int width = size.x;
                int height = size.y;
        Log.e("123","screenWidth="+screenWidth+" screenHeight"+screenHeigh+"  width="+width+"  height"+height);
}

打印结果如下

03-30 12:51:39.610: E/123(3876): screenWidth=720 screenHeight1280  width=720  height1280

证明方法可行,得到的是手机分辨率

posted @ 2015-03-30 12:42  小白屋  阅读(173)  评论(0编辑  收藏  举报