1

为了支持Android应用中,我创建了不同的布局形式不同的屏幕尺寸:SW320,SW480 SW600 sw720Android布局 - 创建比sw320,sw480 sw600 sw720尺寸更多的布局文件夹是否合理?

但我注意到,许多移动智能手机需要SW320的版本,而他们做不同的代表页面。

以下设备上运行时,例如: Nexus One和 三星Galaxy S7 都需要(因为某种原因)的SW320,这是为什么?

是否可以添加更多布局版本的代码?

+1

你给你的资源文件夹的名字是什么? –

+0

layout-sw320dp,layout-sw480dp,layout-sw600dp,layout-sw720dp –

回答

1

Nexus One和Samsung Galaxy s7都需要(出于某种原因)sw320,为什么?

Nexus One是一款hdpi设备,屏幕分辨率为800 x 480像素。它的最短宽度是480像素,即320dp。

三星Galaxy S7应该是一个xxxhdpi设备,其屏幕分辨率为2560 x 1440.其最短宽度为1440像素,即360dp。

因此,考虑到您的其他存储桶,这两个设备都属于您的-sw320dp存储桶。

是否可以添加更多布局版本的代码是可以reasnable?

恕我直言,你应该有更少的版本,而不是更多。您应该使用更流畅的布局,并可以适应屏幕尺寸的小变化。完全不同的布局资源应该保留用于需要对UI进行重大更改的情况(例如,手机和平板电脑之间的经典主/细节模式实现)。

+0

嗨感谢您的回答,从我的搜索 - 三星Galaxy有576 dpi - 所以它应该使用sw480版本,看看这里:http:/ /dpi.lv/ –

+0

@YuvalLevy:资源集合限定符的确定取决于制造商如何配置设备,而不是严格按照屏幕密度进行配置。从资源的角度来看,没有576 dpi的密度。三星最有可能的选择是'xxhdpi'(〜480 dpi)和'xxxhdpi'(〜640 dpi)。根据[Google的设备信息网站](https://material.io/devices/),Galaxy S6具有与S7相同的屏幕特征,而S6是一款'xxxhdpi'设备。 – CommonsWare

+0

谢谢!它看起来会更舒适的使用ldpi mdpi hdpi xhdpi xxhdpi xxxhdpi而不是swf <...> dp –