【发布时间】:2014-10-27 16:37:52
【问题描述】:
我正在创建一个 android 应用程序,它应该在多个不同的设备上运行,并且物理屏幕尺寸明显不同。 推荐的方法似乎是通过设备的 dp-width 来区分屏幕尺寸,例如为相应的设备创建一个“layout-w700dp”文件夹。
我在三星 Galaxy Note 2 (5.5") 和三星 Galaxy S4 mini (4.3") 上测试了我的应用程序。由于可用空间,它们都以不同的方式显示布局,因此需要不同的布局文件。
问题出在:它们都报告了 640 的 dp-width。Note 的 dp-factor 为 2,像素宽度为 1280,S4 mini 的 dp-factor 为 1.5,宽度为 960px。如何为设备使用不同的布局文件?物理尺寸无疑存在巨大差异,老实说,我很想知道“设备独立”测量报告每个设备的宽度相同的原因。
还有其他方法可以为每个设备使用不同的布局文件吗?
编辑:由于内部限制,我无法提供应用程序的图像,但基本上我需要为我的按钮使用不同的背景,因为“wrap_content”考虑了背景大小(以像素为单位),因此,由于密度较低,它们在 S4 mini 上会更大。如果我不这样做,S4 上的按钮太大并且重叠。
提前致谢!
【问题讨论】:
-
这种布局在两种设备上的显示有何不同?能否提供截图以及布局xml?
-
@helleye:我编辑了我的问题
标签: android layout resources width