Galaxy s4的独立像素密度是多少?
我需要它,以便我可以为该手机提供限定符sw???dp
。
如果您能解释如何计算它,那就太好了。
没有人回答这个问题:S4:分辨率 1080 x 1920 像素(~441 ppi 像素密度),每个 gsmarena公式:px = dp * (dpi/160) 来自谷歌关于"支持多个屏幕"的文章。因此:dp = px/(dpi/160)。因此,最短宽度 (sw) = 1080/(441/160) = 391
同样如此:在 Android 应用设计中使用特定于大小和密度的资源问题
在这里,您可以找到如何计算所需每台设备的sw???dp
。
支持多屏的应用程序框架
我认为您应该使用这些限定符而不是 96 x 5'(屏幕尺寸):http://developer.android.com/design/style/devices-displays.html(160、240、320、480)。在这种情况下,Galaxy S4,您会得到良好的结果,但是如果您尝试例如使用Nexus4(4,7'),您将获得sw~272
而不是380
应有的效果,并且在实践中发生。这是您应该在公式中使用的值,您将获得正确的结果。
或
运行此代码段代码:(API 13+)
int sw = getResources().getConfiguration().smallestScreenWidthDp;
Galaxy s4的密度约为~441ppi,即scale factor
约为441/160 = 2.75。 这远高于hdpi(1.5)
或xhdpi (2.0)
。将字体 xml 放入 values-xxhdpi
文件夹。
您也可以在此处查看任何进一步的查询。
你总是可以在gsmarena中找到它。
对于其他未知手机,以下是计算dpi的公式:
dpi = ( square_root ( horizontal_pixels ^ 2 + vertical_pixels ^ 2 )) / ( screen_size )
在星系s4的情况下:
- 水平像素 = 1080
- 垂直像素 = 1920
- 屏幕尺寸 = 5.0
然后
dpi = ( square_root ( 1080 ^ 2 + 1920 ^ 2 )) / 5.0
dpi = ( square_root ( 1166400 + 3686400 )) / 5.0
dpi = ( square_root ( 4852800 )) / 5.0
dpi = ( 2202.91 ) / 5.0
dpi = 440.5
dpi = 441 dpi