1

我有一个自定义对话框,它有 3 个按钮,有时它只有一个按钮。当我有 3 个按钮时,LinearLayout它们本身就很适合这些按钮。但是当我只有一个按钮时,它会为单个按钮提供可用的整个宽度,从而使该按钮看起来太大。我想要这样,如果只有一个按钮,它应该只占可用宽度的一半或者应该包装内容(按钮图像。)请参阅以下图片以供参考 -

3个按钮对话框

1个按钮对话框

4

2 回答 2

3

请参阅与您的要求类似的此 XML 文件。只是可见性转到不需要的按钮。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal" android:weightSum="3" android:gravity="center_horizontal">

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Button"/>


    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Button" />

    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="Button"/>

</LinearLayout>
于 2012-04-10T08:04:00.653 回答
1

为了让一个按钮占据可用屏幕宽度的一半,您需要

  1. 设置android:weightSum="2"在父级LinearLayout
  2. 设置android:layout_weight="1"Button
于 2012-04-10T07:51:20.057 回答