我在一个线性布局中有三个相同的按钮。
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:layout_weight="1"
android:background="@drawable/button_clear"
android:layout_width="match_parent"
android:layout_height="60dp"
android:text="Kamera öffnen" />
<Button
android:layout_weight="1"
android:background="@drawable/button_clear"
android:layout_width="match_parent"
android:layout_height="60dp"
android:text="Bild hochladen" />
<Button
android:layout_weight="1"
android:background="@drawable/button_clear"
android:layout_width="match_parent"
android:layout_height="60dp"
android:text="Abbrechen" />
</LinearLayout>
如果我将设备从水平转为垂直,前两个按钮的文本需要一个自动换行。 问题是,按钮会改变它们的高度 - &gt;带有wordwrap的两个按钮的高度低于仅有一个文本行的第三个按钮。
为什么会发生这种情况,我该如何预防呢?
答案 0 :(得分:0)
希望以下xml能解决您的问题。
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
xmlns:android="http://schemas.android.com/apk/res/android"
android:weightSum="3">
<Button
android:layout_weight="1"
android:background="@drawable/button_clear"
android:layout_width="0dp"
android:layout_height="60dp"
android:text="Kamera öffnen" />
<Button
android:layout_weight="1"
android:background="@drawable/button_clear"
android:layout_width="0dp"
android:layout_height="60dp"
android:text="Bild hochladen" />
<Button
android:layout_weight="1"
android:background="@drawable/button_clear"
android:layout_width="0dp"
android:layout_height="60dp"
android:text="Abbrechen" />
当您使用layout_weight时,在根布局上使用weightSum,因为当您有更多视图或复杂视图时,它会产生冲突。你还应该使用layout_width / height =&#34; 0dp&#34;取决于根布局方向,以获得layout_weight的优势。因为您试图使用重量控制您的视图。谢谢