2013-04-30 115 views
3

我想知道如何將一組單選按鈕放入可用空間。問題是我使用的是水平佈局,每個按鈕旁邊的文字使得整個radiogroup太大而不適合。它看起來很醜。我想要做的是將每個單選按鈕的文本放在單選按鈕上方。如何將文本放在Android的RadioButton上方或下方

回答

1

這個答案實際上是錯誤的。我發現,通過一些額外的測試,將RadioLayouts和TextFields放入RadioGroup會爲您提供一個無功能的RadioGroup。我可以恢復正常功能的唯一方法是刪除TextField和LinearLayouts。爲了讓東西適合,我必須在安排事物方面變得更有創意。

它只是表明,當你認爲你很聰明,你通常不是。 :)

-------錯誤答案--------

我發現我可以把RadioGroup中內的佈局,所以我用一個垂直方向的LinearLayout中每個單選按鈕的在radiogroup內。我在每個按鈕上方都包含一個文本框,並將標籤文本放在那裏。我從按鈕本身刪除了標籤文本,瞧,我有一個帶有按鈕上方按鈕標籤的radiogroup。

下面是一個例子:

<RadioGroup 
     android:id="@+id/bar_display_filter_radiogroup" 
     android:layout_width="0dip" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:layout_gravity="center_horizontal" 
     android:checkedButton="@+id/bar_filter_all" 
     android:orientation="horizontal" > 

     <LinearLayout 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:orientation="vertical" > 

     <TextView 
      android:text="@string/bar_radiobutton_all_text" 
      style="@style/RadioButton" 
      /> 
     <RadioButton 
      android:id="@+id/bar_filter_all" 
      style="@style/RadioButton" 
      android:onClick="onFilterClick" 
      /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:orientation="vertical" > 

     <TextView 
      style="@style/RadioButton" 
      android:text="@string/bar_radiobutton_enroute_text" /> 

     <RadioButton 
      android:id="@+id/bar_filter_enroute" 
      style="@style/RadioButton" 
      android:onClick="onFilterClick" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_weight="1" 
      android:gravity="center_horizontal" 
      android:orientation="vertical" > 

     <TextView 
      style="@style/RadioButton" 
      android:text="@string/bar_radiobutton_delivered_text"/> 
     <RadioButton 
      android:id="@+id/bar_filter_delivered" 
      style="@style/RadioButton" 
      android:onClick="onFilterClick" 
      /> 
     </LinearLayout> 
    </RadioGroup> 

我希望這證明別人遇到了同樣的問題非常有用。

相關問題