我有我的應用程序的某些部分的相對佈局,由一個複選框,一個按鈕,一些文本和另一個按鈕組成(請參見第一個截圖,例如:[5分鐘]屏幕關閉後[除外])。相對佈局中的按鈕被TextView推下屏幕
問題在於其他語言,最後一個按鈕左側的文本可能會更長,推動「除外」按鈕稍微或完全脫離屏幕。我還能怎麼做,以便按鈕(連同文本)繞回到下一行?現在只有文字。下面是代碼:
<RelativeLayout
android:id="@+id/layout_after_time"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp">
<Button
android:id="@+id/button_set_time_turn_off"
android:layout_width="wrap_content"
android:layout_height="35sp"
android:paddingTop="0dp"
android:paddingBottom="0dp"
style="?android:attr/buttonStyleSmall"
android:layout_centerVertical="true"
android:textSize="16sp"/>
<TextView
android:id="@+id/textView_data_check_minutes"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="3dp"
android:layout_marginStart="3dp"
android:layout_toRightOf="@+id/button_set_time_turn_off"
android:layout_toEndOf="@+id/button_set_time_turn_off"
android:layout_centerVertical="true"
android:textSize="16sp"
android:textColor="@android:color/primary_text_dark"
android:text="@string/text_disable_after_time" />
<Button
android:id="@+id/button_set_disable_exceptions"
android:layout_width="wrap_content"
android:layout_height="35sp"
android:paddingTop="0dp"
android:paddingBottom="0dp"
android:layout_toRightOf="@+id/textView_data_check_minutes"
android:layout_toEndOf="@+id/textView_data_check_minutes"
style="?android:attr/buttonStyleSmall"
android:layout_centerVertical="true"
android:text="@string/button_disable_except"
android:textSize="16sp"/>
</RelativeLayout>
"except" button pushed off screen http://i60.tinypic.com/214zj3t.png
感謝您的建議@codeMagic。它並不完全符合我想要的,即將文本AND按鈕推到下一行,但它確實有效。 textView成爲多行,按鈕保持原位。我不得不使按鈕的重量0.00000001和textView 1的重量,否則按鈕被擠壓。我不確定爲什麼權重看起來落後。我會稍等一下,看看是否有人可以想出一種方法來處理文本,最後一個按鈕將換行到下一行,否則我會將其標記爲正確。 – Flyview 2014-09-20 13:06:28
其實更好的是,我將內部textView的權重設置爲1,並且不對按鈕設置權重(默認值爲0),但在按鈕上使用wrap_content作爲寬度,並且它完美地工作! – Flyview 2015-04-17 17:12:23