baidu_36583608
2019-04-19 11:08 阅读 952

android如何获取屏幕正是宽高像素?

今天想做适配,突然发现通过代码获取的宽高不太对劲

1080x1920的手机,3120x1440的手机,2880x1440的手机,获取到的宽度均为1080,高度虽然不一样但也和手机参数不一致。应该如何正确获取宽高参数?

尝试过的代码如下

    WindowManager wm = (WindowManager) this.getSystemService(Context.WINDOW_SERVICE);
    DisplayMetrics dm = new DisplayMetrics();
    wm.getDefaultDisplay().getMetrics(dm);
    width = dm.widthPixels;         
    height = dm.heightPixels;

            playMetrics outMetrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getRealMetrics(outMetrics);
    int width = outMetrics.widthPixels;
    int height
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • weimingjue 王能 2019-04-19 11:39

    你可以试试设置一个view的宽为widthPixels看看能不能全屏

    点赞 评论 复制链接分享
  • ma969070578 天海行者 2019-05-08 17:54
    
    public static  float getHeightInPx(Context context) {
            final float height = context.getResources().getDisplayMetrics().heightPixels;
            return height;
        }
    
        public static  float getWidthInPx(Context context) {
            final float width = context.getResources().getDisplayMetrics().widthPixels;
            return width;
        }
    
    
    点赞 评论 复制链接分享

相关推荐