android屏幕知识,dp sp px总结

屏幕初步总结。

一、目前手机屏幕像素密度基本有5种情况。(以下像素密度简称密度)

   密度   ldpi      mdpi       hdpi      xhdpi         xxhdpi

密度值  120      160       240      320         480

分辨率  240x320    320x480    480x800    720x1280    1080x1920

    换算  1dp=0.75px   1dp=1px     1dp=1.5px   1dp=2px      1dp=3px

当安卓系统字号为“普通”时,sp==dp,换算到px和dp一样。

1.320x480和480x800的屏幕宽度都是320dp,720x1280和1080x1920屏幕宽度都是360dp.

2.默认360dp的屏幕布局(较为主流),对320dp的屏幕单独布局,布局文件放到layout-w320dp文件夹中,其他特殊分辨率的可以将布局文件放在标有分辨率的文件夹中,如layout-854x480。

3.不是设计Rom而是做应用的话,一般设计师在720x1280画布上做图片,开发时资源要放在drawable-xhdpi文件夹中。一般一套素材就可以了。显示太卡的话可以提供部分mdpi的图片素材。

4.想让9.png图片在不同密度下相同像素值,即不缩放,可以放到drawable-nodpi中。这个文件夹中图片根据实际像素显示。

5.方法一:一套图片,一套layout,多套dimen值。用到的值分别在不同分辨率的value文件夹中的dimen.xml中定义。

方法二:一套图片,多套layout文件。

6.多用相对布局Relativelayout。

7.如果是在程序中写死的布局,需要判断屏幕大小,再分别写对应的布局。

/**
*判断屏幕大小
*/
WindowManager windowManager = getWindowManager();     
         Display display = windowManager.getDefaultDisplay();     
         int screenWidth = display.getWidth();     
int screenHeight = display.getHeight();

二、平板

1280X800分辨率的平板一般是10.1寸中密度屏,素材一般在1280x800画布上做图。素材放到drawable-mdpi中。1dp=1px。

原文地址:https://www.cnblogs.com/chrono/p/3983609.html