Android: Come modificare la dimensione del RadioButton
-
26-09-2019 - |
Domanda
ho molti RadioButton
s nella mia app. I pulsanti di opzione sono troppo grande per me. C'è un modo per renderli più piccoli?
Soluzione
Non può essere fatto, il pulsante di scelta è un built-in componenti di controllo e come tale la sua dimensione è fissa.
Altri suggerimenti
Una soluzione hacky rapida è quella di scalare il pulsante verso il basso:
<RadioButton
android:scaleX="0.5"
android:scaleY="0.5" />
Questa grande opera per andare più piccolo.
Per andare più grande, questo tende a causare qualche ritaglio dal contenitore View, quindi è probabile che sia di codificare l'altezza / larghezza della RadioGroup per adattare i pulsanti in scala. Il drawable pulsante può anche ottenere notevolmente pixelated il più grande si va, quindi non è davvero grande se volete qualcosa di più grande 3x ...
possono essere fatto, ma non è così semplice come l'impostazione del Layout_Width e Layout_height come con EditTexts, bottoni ecc Per modificare la dimensione / sguardi di una vista come un uso pulsante checkbox / radio " Background" e 'proprietà Button' per specificare il proprio drawable.
Questa è una pagina più vecchio, e le posizioni sono diverse, ma questo vi darà un'idea: http://www.anddev.org/tutorial_change_look_of_checkbox-t4553.html
è possibile utilizzare scaleX e scaleY proprietà, quindi utilizzare translationX e translationY di metterlo nelle vetrine RadioButton.
<RadioButton
android:id="@+id/rbtnfkilo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:scaleX="1.4"
android:scaleY="1.4"
android:text="Kilogram"
android:textColor="#fff"
android:textSize="18sp"
android:translationX="24dp" />
I relpaced RadioButton
con ToggleButton
e applicata stesso stile. Ho fatto sfondo override e pulsante.
<ToggleButton
android:id="@+id/btnToggle1"
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_weight="1"
android:checked="true"
style="@style/ToggleButtonStyle"
android:button="@null"
android:textOn="@string/btnTitle"
android:textOff="@string/btnTitle"/>
e stile:
<style name="ToggleButtonStyle">
<item name="android:background">@drawable/background_radiobutton</item>
<item name="android:textColor">@color/selector_text_radiobutton</item>
<item name="android:textAppearance">@null</item>
</style>
funziona per me -. Sembra la stessa, ma con altezza su misura
Se il RadioButton è in RadioGroup, sarà necessario personalizzare ascoltatore, Assegno Android: Come ottenere un RadioGroup con ToggleButtons ? p>
<RadioGroup android:layout_width="fill_parent"
android:layout_height="50dp"
android:orientation="horizontal"
android:checkedButton="@+id/first">
<RadioButton android:id="@+id/first"
android:width="50dp"
android:height="50dp"
android:button="@drawable/button_radio"/>
<RadioButton android:id="@+id/second"
android:width="50dp"
android:height="50dp"
android:button="@drawable/button_radio"/>
<RadioButton android:id="@+id/third"
android:width="50dp"
android:height="50dp"
android:button="@drawable/button_radio"/>
<RadioButton android:id="@+id/fourth"
android:width="50dp"
android:height="50dp"
android:button="@drawable/button_radio"/>
</RadioGroup>
Ho fatto questo regolando la TextSize di RadioButton stessa
Come così
android:textSize="20sp"
quindi applicare al mio codice;
<RadioGroup
android:id="@+id/checkboxRadioButton"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="horizontal">
<RadioButton
android:id="@+id/rb1"
style="@android:style/Widget.CompoundButton.CheckBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/checkBoxMargin"
android:text="YES"
android:textSize="20sp" />
...
Spero che questo aiuto a qualcuno