如何计算设备的像素密度(dp)?

Lit*_*nny 6 android resolution density-independent-pixel

Galaxy s4的独立像素密度是多少?

我需要它,所以我可以sw???dp为那部手机设置限定符.

如果你能解释如何计算它会很棒.

cod*_*per 14

没有人回答这个问题:S4:分辨率1080 x 1920像素(~441 ppi像素密度)每gsmarena公式:px = dp*(dpi/160)来自谷歌关于"支持多个屏幕"的文章.因此:dp = px /(dpi/160).因此,最短宽度(sw)= 1080 /(441/160)= 391

如此处所述:在Android应用程序设计中使用大小和密度特定的资源问题


小智 5

Galaxy s4的密度约为441ppi,因此scale factor将达到441/160 = 2.75左右.这远远高于hdpi(1.5)或.xhdpi (2.0)将你的字体xml放在 values-xxhdpi文件夹中.

您还可以在 这里查看任何进一步的查询.


Ale*_*dro 5

在这里,您可以找到如何计算sw???dp所需的每个设备.

应用程序Skeleton支持多个屏幕

我认为你应该使用这些限定符而不是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;