什么是android DPI

时间:2014-03-03 07:49:22

标签: android dpi

我有两个关于“DPI”术语的问题 1,我用Google搜索这个词,有人说这意味着每英寸点数。我们可以使用以下公式来计算屏幕dpi: dpi =激进(screen_width_pixel ^ 2 + screen_height_pixel ^ 2)/ screen_inchs
现在,我有一个Android电视,我发现我的电视分辨率是1920 * 1080,dpi是240,电视大小是50英寸。但如果我使用上面的公式来计算dpi,我会得到dpi值为40,我不知道为什么?是高于公式ppi公式?
2,我发现dpi值在 build.prop-> ro.sf.lcd_density = 240 中,我不知道为什么manfacturer设置了这个值,换句话说,是什么这个值基于,为什么不设置320或其他值?他们在农场上方使用以获得价值并设定它? 非常感谢!

2 个答案:

答案 0 :(得分:1)

我最近一天一直在研究你的问题的答案,并得出了一些结论 -  1。

  1. PPI 是每英寸像素数,纯数学。即 - 它计算每英寸的像素数。
  2. DP - 设备无关像素AKA - >即android系统定义一个虚拟像素,以便它可以比较具有不同像素密度的设备。您知道基线是160 DPi(每英寸160点),因此任何MDPI设备都有一个虚拟网格,每英寸包含160 DP,而HDPI设备具有相同的网格,但每英寸将包含240 DP。 (请注意,一个点/独立于设备的像素可能包含的像素数会有所不同,具体取决于设备的大小。)
  3. 这里有你的答案 - a)DPi是系统定义的,所有你能计算的是一英寸的DP数,在你的情况下总计为 - 1920 * 160/240 = 1280 DPs的高度,1080 * 160/240 = 720 DPs的宽度),你计算的是PPi。 b)制造商将其设置为您可以知道调整图像大小所需的量。假设图像具有160DPi的特定尺寸,然后为了使该图像看起来相同,您需要在320DPi屏幕上将图像的尺寸加倍。
  4. 注意 - 我试图让你理解,如果你发现任何问题理解我的答案,请发表评论,很乐意提供帮助。

    Reference # 1

答案 1 :(得分:0)

最后尝试使用此信息来开发和安装工作室屏幕

<View style={[color: 'red']}>
<Text>Text1</Text>
<Text>Text2</Text>
<Text>Text3</Text>
</View>

-

ldpi (low) ~ 120dpi
mdpi (medium) ~ 160dpi
hdpi (high) ~ 240dpi
xhdpi (extra-high) ~ 320dpi
xxhdpi (extra-extra-high) ~ 480dpi
xxxhdpi (extra-extra-extra-high) ~ 640dpi

-

res/values/dimens.xml(default)
res/values-ldpi/dimens.xml   (240x320 and nearer resolution)
res/values-mdpi/dimens.xml   (320x480 and nearer resolution)
res/values-hdpi/dimens.xml   (480x800, 540x960 and nearer resolution)
res/values-xhdpi/dimens.xml  (720x1280 - Samsung S3, Micromax Canvas HD, etc) 
res/values-xxhdpi/dimens.xml (1080x1920 - Samsung S4, HTC one, etc)
res/values-large/dimens.xml  (480x800)

w600表示当前方向的宽度是否接近600

sq600表示如果设备的最小值接近600