上一篇讲述了基本问题。
这次来看看官方的解决办法中的一个重要概念:dp或者dip
背景:一共需要8个细节才能表达完整的ui在一个格子可以表达4个细节的手机上显示,到了一个格子只能表达1个细节的手机上显示,也就是4个格子才能表达4个细节,结果图片看起来变大了,看起来方块比较多,或者比较模糊。(如果是需要一个细节表达完整的ui在一个格子表达一个细节的手机上放到一个格子可以表达4个细节的手机上,那么这个细节可以填充一个格子,缩放之后可以将另外三个细节填满,就是缩小了)
那么如何让他们看起来差不多大小一样,又清晰呢?
综上所述,肯定需要不同细节的相同ui,文件包里面就有四个不同细节,而表达一样的ui的文件包。
通过公式px=dp(dpi/160)达到目的。
那么这到底是个什么意思呢?
其实公式中的dpi没有单位了,本来有,但是除了之后就没有了,160是个密度,dpi也是个密度。
160是个参考手机的dpi!!官方给定。
其实上面我提到了。
我用一个细节表示的ui用一个格子表示,用到一个格子可以表示4个细节的手机上,我可以放大4倍,也可以缩小四倍,这就是4dp。用到公式上则是,用一英寸上所有格子可以表达160个细节,用在别的手机时一英寸在所有格子能表达填充或者缩放多少个个格子。比如320,代表着所有格子整体可以容纳2个细节,意味着可以缩放1∽2倍!!!反过来就可以放大1∽2倍!!!
这就是官方的解决方案中的dp概念解读!!