在android中使用dp和dpi而不是百分比?

时间:2013-12-03 10:58:29

标签: android dpi

我已经理解了dp和dpi在android中使用的不同布局和图像的概念。但我怀疑(对不起,如果愚蠢)是为什么android提出密度像素,密度独立像素的概念而不是像html中的百分比。开发人员越来越难了。

1 个答案:

答案 0 :(得分:3)

由于支持多个屏幕,android引入了这个dp和dip概念

dp或dip

来自Android Documentation for Supporting Multiple Screens

  

与密度无关的像素 - 基于屏幕物理密度的抽象单位。这些单位相对于 160   dpi 屏幕,因此一个dp是 160 dpi 屏幕上的一个像素。

     

使用dp:

     

密度独立性 - 当您的应用程序保留物理大小(来自用户的)时,您的应用程序实现“密度独立性”   在屏幕上显示的用户界面元素的观点)   密度不同。 (即)图像看起来应该相同   (不放大或缩小)在不同类型的屏幕中。

     

与密度无关的像素是您在定义UI布局时应使用的虚拟像素单元,用于表示布局尺寸或位置   以密度无关的方式。

     

与密度无关的像素相当于一个物理像素   在 160 dpi 屏幕上,这是基线密度   用于“中等”密度屏幕的系统。在运行时,系统   根据需要透明地处理dp单元的任何缩放   关于使用中的屏幕的实际密度。 dp的转换   屏幕pixels的单位很简单: px = dp *(dpi / 160)

     

例如,在240 dpi屏幕上1 dp equals 1.5 physical pixels。   在定义应用程序的UI时,应始终使用dp单位,   确保在不同的屏幕上正确显示您的UI   密度