我为 Galaxy S4 和 Nexus 4 设备使用“layout-sw360dp”,但在我的屏幕上显示 Galaxy S4 上的一些空间。所以我可以为 Galaxy S4 和 Nexus 4 制作不同的布局吗?如果可能的话,请给我解决方案。
5 回答
对于 Galaxy s4 使用layout-xxhdpi
对于 Nexus 4 使用layout-xhdpi
Galaxy S4 -- 1080 x 1920 pixels -- 5.0" -- 441 ppi -- xxhdpi
Nexus 4 -- 1280 x 768 pixels -- 4.7" -- 320 ppi -- xhdpi
您必须制作不同的图像以适应这些设备的分辨率
根据其他答案640 x 360 dp
,一个设备是另一个640 x 384 dp
。
您不想为它们制作不同的布局,因为您迟早会看到设备640 x 372 dp
或640 x 388 dp
.
相反,使您的布局具有弹性,不要对像素进行硬编码(与密度无关的像素也可能被严重硬编码)。
好的,这里是...供参考
这是较旧的布局文件夹命名约定,但您明白了。
您必须将所有内容转换为 mdpi 才能进入以下存储桶。
用于布局的存储桶是:xlarge 960 x720 min large 640 x480 min normal 470 x 320 min small 426x 320 min
缩放比例 3:4:6:8:12 这意味着您必须多个 ldpi * 3/4 才能从 ldpi 变为 mdpi 并且必须多个 mdpi * 4/6 才能从 mdpi 变为 hdpi 并且必须多个 hdpi * 6 /8 从 hdpi 到 xhdpi 并且您必须多个 xhdpi * 8/12 从 xhdpi 到 xxhdpi
所以来回答这个问题......
s4 为 xxhdpi,表示缩放比例为 4/12 或 1/3。这意味着您必须将 xxhdpi 转换为 mdpi 才能正确放置在布局文件夹中。
所以 1080 * 1/3 = 360 和 1920 * 1/3 = 640 所以这会将它放在一个普通的布局文件夹中
nexus 4 是 xhdpi,这意味着缩放比例是 4/8 或 1/2。4 这意味着您必须从 xhdpi 转换为 mdpi 才能正确放置在布局文件夹中。所以 1280 * 1/2 = 640 和 768 * 1/2 = 384 所以这也会把它放在一个普通的布局文件夹中。
好的,所以这并不能完全削减它,因为它们是不同的分辨率。我们可以使用新的命名约定来组成文件夹。例如,s4 的最小宽度是 360,而 nexus 4 的最小宽度是 384。所以文件夹可以是 sw360dp 和 sw384dp。
您还可以将文件夹命名为 layout-xxhdpi,它会捕获 s4 但不会捕获 nexus 4
请注意:如果你也有一个 s3 的话,只是把另一个扔出去。这也将进入 sw360dp 文件夹。所以我想你也必须在它们之间有所不同。如果你在上面使用了 layout-xxhdpi,那么你可以在这里使用 sw360dp,也可以在上面使用 sw384dp。将它们全部覆盖。谢谢
对于nexus 4,请使用以下布局。
布局-sw360dp
Galaxy s3 和 nexus 4 都有相同的布局。
这两款手机都有不同的屏幕尺寸和分辨率,
这也导致了不同的密度。
据我所知——
Galaxy s4 具有 1080 x 1920 像素,5.0 英寸(约 441 ppi 像素密度)。
和
Nexus 4 具有 1280 x 768 像素,4.7 英寸 (320 ppi)。
您必须根据手机规格设计布局(以及图像)。