如何在一行中完美对齐4个按钮,每个按钮之间有一个边距/填充。
到目前为止,我确实创建了这个布局,但它不是完全一致的:
此外,我需要在每个按钮下面都有一个对齐的文本。
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:android="http://schemas.android.com/apk/res/android">
<Button
android:id="@+id/button1"
android:layout_width="60dp"
android:layout_height="60dp"
android:background="@drawable/round_button"
android:layout_margin="10dp"
android:text="Button" />
<Button
android:id="@+id/button2"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_margin="10dp"
android:background="@drawable/round_button"
android:text="Button" />
<Button
android:id="@+id/button3"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_margin="10dp"
android:background="@drawable/round_button"
android:text="Button" />
<Button
android:id="@+id/button4"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_margin="10dp"
android:background="@drawable/round_button"
android:text="Button" />
<Button
android:id="@+id/button2"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_margin="10dp"
android:background="@drawable/round_button"
android:text="Button" />
</LinearLayout>
答案 0 :(得分:0)
尝试这样的事情:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="text"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="text"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="text"/>
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="text"/>
</LinearLayout>
</LinearLayout>
希望这有帮助
答案 1 :(得分:0)
尝试使用属性android:gravity =“center”或“left”或“right”作为布局。
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
xmlns:android="http://schemas.android.com/apk/res/android">
答案 2 :(得分:0)
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:orientation="horizontal">
<Button
android:id="@+id/button1"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_marginEnd="10dp"
android:layout_weight="1"
android:text="Button" />
<Button
android:id="@+id/button2"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_marginEnd="10dp"
android:layout_weight="1"
android:text="Button" />
<Button
android:id="@+id/button3"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_marginEnd="10dp"
android:layout_weight="1"
android:text="Button" />
<Button
android:id="@+id/button4"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_marginEnd="10dp"
android:layout_weight="1"
android:text="Button" />
<Button
android:id="@+id/button5"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_weight="1"
android:text="Button" />
</LinearLayout>
答案 3 :(得分:0)
要在一行中水平对齐4个按钮,并在每个按钮之间使用边距/填充。
请尝试以下代码:
<LinearLayout
android:layout_width="match_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content">
<LinearLayout
android:layout_weight=".2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:layout_margin="5dp">
<Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:layout_height="60dp"
android:text="Button1"
android:background="@drawable/round_button"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Text 1"/>
</LinearLayout>
<LinearLayout
android:layout_weight=".2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:layout_margin="5dp">
<Button
android:id="@+id/button2"
android:layout_width="match_parent"
android:layout_height="60dp"
android:text="Button2"
android:background="@drawable/round_button"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Text 2"/>
</LinearLayout>
<LinearLayout
android:layout_weight=".2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:layout_margin="5dp">
<Button
android:id="@+id/button3"
android:layout_width="match_parent"
android:layout_height="60dp"
android:text="Button3"
android:background="@drawable/round_button"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Text 3"/>
</LinearLayout>
<LinearLayout
android:layout_weight=".2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:layout_margin="5dp">
<Button
android:id="@+id/button4"
android:layout_width="match_parent"
android:layout_height="60dp"
android:text="Button4"
android:background="@drawable/round_button"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Text 4"/>
</LinearLayout>
</LinearLayout>
上述代码在不同设备中的输出:
对于设备1
对于设备2