我有4个按钮,我使用layout_weight =“1”和layout_width =“0dp”均匀分隔。但是,在大平板电脑布局上,按钮太分散并且看起来很丑,所以我想为所有按钮设置maxWidth,而在整个LinearLayout的两侧都有空格(所以四个按钮聚集到中心) )。然而,爬行StackOverflow,许多人说他们不能一起工作。有没有办法让我实现上面想做的事情?
TL; DR:
如果布局要求按钮大于100dp,则所有4个按钮都设置为100dp宽度并粘在一起,在布局的两侧留下空间。
<LinearLayout
android:layout_width="match_parent"
android:layout_height="@dimen/layout_height"
android:background="@drawable/layout_background"
android:orientation="horizontal">
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@color/button_background"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@color/button_background"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@color/button_background"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@color/button_background"/>
</LinearLayout>
答案 0 :(得分:0)
试试这个
<LinearLayout
android:layout_width="match_parent"
android:layout_height="@dimen/layout_height"
android:background="@drawable/layout_background"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="horizontal">
<Button
android:layout_width="match_parent"
android:layout_height="match_parent"
android:maxWidth="100dp"
android:background="@color/button_background"/>
</LinearLayout>
</LinearLayout>
一个简单的黑客可能是
使用线性布局包裹您的按钮并将权重设置为此布局
将此最大宽度设置为此子布局内的按钮
答案 1 :(得分:0)
试试这个`
<Button
android:background="@color/button_background"
android:layout_height="match_parent"
android:layout_margin="20dp"
android:layout_weight="1"
android:layout_width="0dp" />
<Button
android:background="@color/button_background"
android:layout_height="match_parent"
android:layout_margin="20dp"
android:layout_weight="1"
android:layout_width="0dp" />
<Button
android:background="@color/button_background"
android:layout_height="match_parent"
android:layout_margin="20dp"
android:layout_weight="1"
android:layout_width="0dp" />
<Button
android:background="@color/button_background"
android:layout_height="match_parent"
android:layout_margin="20dp"
android:layout_weight="1"
android:layout_width="0dp" />
`
根据需要为每个按钮添加边距。