美文网首页
Android 获取屏幕的尺寸和密度

Android 获取屏幕的尺寸和密度

作者: 墨染草 | 来源:发表于2018-09-28 15:12 被阅读16次

相关概念:
density :屏幕密度(像素比例)
densityDPI:像素密度(每寸点数)
xdpi: 屏幕横向每英寸所占像素数
ydpi: 屏幕纵向每英寸所占像素数
DIP :Dnsity Independent Pixel 直译为“密度无关像素”


// 获取屏幕密度(方法3)
        dm = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(dm);
        
        density  = dm.density;      // 屏幕密度(像素比例:0.75/1.0/1.5/2.0)
        densityDPI = dm.densityDpi;     // 屏幕密度(每寸像素:120/160/240/320)
        xdpi = dm.xdpi;         
        ydpi = dm.ydpi;
        
        Log.e(TAG + "  DisplayMetrics", "xdpi=" + xdpi + "; ydpi=" + ydpi);
        Log.e(TAG + "  DisplayMetrics", "density=" + density + "; densityDPI=" + densityDPI);
        
        int screenWidthDip = dm.widthPixels;        // 屏幕宽(dip,如:320dip)
        int screenHeightDip = dm.heightPixels;      // 屏幕宽(dip,如:533dip)
 
        Log.e(TAG + "  DisplayMetrics(222)", "screenWidthDip=" + screenWidthDip + "; screenHeightDip=" + screenHeightDip);
        
        screenWidth  = (int)(dm.widthPixels * density + 0.5f);      // 屏幕宽(px,如:480px)
        screenHeight = (int)(dm.heightPixels * density + 0.5f);     // 屏幕高(px,如:800px)

相关文章

网友评论

      本文标题:Android 获取屏幕的尺寸和密度

      本文链接:https://www.haomeiwen.com/subject/fmaanftx.html