2

例如,在某些布局中具有 android:layout_width="0dip" android:layout_weight="1" 属性的两个按钮的组合工作得很好,两个按钮将占据相等的空间!

但是,如果我想要有 2 个按钮,但又想要一个空间,并且该空间与按钮将占据的空间相同,该怎么办。

换句话说,我想要一个带有 android:layout_width="0dip" android:layout_weight="1" 属性的按钮和一个按钮右侧的空间,就像带有 android:layout_width="0dip 的不可见按钮一样" android:layout_weight="1" 属性

有没有一种干净的方法来做到这一点?

我不想做像 textview 这样没有文本和 android:layout_width="0dip" android:layout_weight="1" 属性的黑客行为......

我想知道有没有办法将“重量”放在边距或填充上。我认为没有这样的事情,但我想听听您对这种布局的意见和建议,这种布局会根据屏幕宽度缩小。

4

3 回答 3

1

您应该查看 weightSum 属性。如果将 2 个元素放置在水平 LinearLayout 中,每个元素的 layout_weight=1,声明 LinearLayout 的 weightSum=3,这应该正是您所需要的。

此外,如果您决定破解这个问题,请查看Space视图 - 它是针对此类情况的轻量级视图。

于 2013-03-15T13:36:22.963 回答
0

在主布局中使用 android:weightsum=100 并且无论您需要按钮的大小将总和分成该数量的部分,然后在您的按钮中使用 android:layout_width=""。它会自动设置按钮的间距和大小。

于 2012-08-21T05:45:30.677 回答
0

这不完全是您问题的答案,但您可以将按钮设置为可见性“INVISIBLE”(而不是 GONE),它将是不可见的,但仍占据相同的空间。

否则,请尝试使按钮的 layout_weight 为包含布局中指定的 weightSum 的一半,并将按钮向左对齐。如果它不起作用,并且您不喜欢第一段中的解决方案,则可以使用 View 作为间隔项。

于 2011-09-07T09:27:53.100 回答