Android - 布局上的dp单位 - 看起来像坏主意?

时间:2014-08-21 20:45:34

标签: android android-layout android-view

Android开发者网站,大多数人,推动所有人在他们的布局上使用dp单位,

如果你为不同的密度使用不同的布局,我可以理解这种方法,但是当我的需求是一个layout.xml和一个drawable文件夹时,使用它是没有意义的, 因为它不是保留比例。

对我来说,似乎很奇怪,没有简单的方法可以保留所有设备的比例。

帮助您理解我的观点 1.制作任何带有视图的布局 2.设置dp上的大小,因为Android建议你这样做 3.然后在XML的eclipse图形视图中检查它。

不同尺寸的设备看起来有所不同。 宽度为15 dp的按钮在640 * 480设备中比平板电脑大10倍。 那么重点是什么?

我理解dp和像素之间转换的所有数学密度, 但我寻找简单的方法来保留我的布局比例,而不是为别人的密度定义其他比例。

我找到帮助的唯一方法是使用android:weightsum,
但它不能用于边距和其他设置 有什么想法吗?

2 个答案:

答案 0 :(得分:3)

您始终可以使用文件夹,并为每种不同的设备密度实现精确的dp大小,因此您不会在不同的密度上创建不同的布局。

平板电脑和手持设备的尺寸永远不会与创建不同布局文件夹的尺寸相同,以便开发人员可以在不同设备上进行设计。

我建议大多数应用适用于平板电脑和手持设备的不同布局设计。

答案 1 :(得分:1)

将dp单位视为指实际尺寸(如cm和英寸)。因此,250dp的东西(例如)在手机上看起来大约1英寸,而在平板电脑上也大约1英寸。无论设备的大小和分辨率如何,它总是大约1英寸。

为什么这样做?嗯,基本上是Android创意愿景,你不会只是将你的应用程序从手持屏幕扩展到平板电脑大小的屏幕。这就是为什么他们不允许您指定高度和宽度占屏幕尺寸的百分比。 LinearLayout中的一个小例外是layout_weight。

您可能同意或不同意他们的愿景,但这是现实。