Android: Cómo cambiar el tamaño de la RadioButton
-
26-09-2019 - |
Pregunta
Tengo muchos RadioButton
s en mi aplicación. Los botones de opción son demasiado grandes para mí. ¿Hay alguna manera de hacerlos más pequeños?
Solución
No se puede hacer, el botón de radio es un componente integrado de control y, como tal, su tamaño es fijo.
Otros consejos
Una solución rápida hacky es escalar el botón de abajo:
<RadioButton
android:scaleX="0.5"
android:scaleY="0.5" />
Esto funciona muy bien para ir más pequeño.
Para ir más grande, esto tiende a causar algún recorte del recipiente de Vista, por lo que es probable que tenga que codificar la altura / anchura de la RadioGroup para adaptarse a los botones de escala. El dibujable botón también puede quedar notablemente más pixelada cuanto mayor sea que vaya, así que no es realmente grande si quieres algo más grande 3x ...
puede que hacer, pero no es tan simple como poner la Layout_Width y Layout_height como con EditTexts, botones, etc. Para modificar el tamaño / aspecto de una vista como un botón de uso casilla / radio del " fondo" y 'propiedades de los botones' para especificar su propio dibujables.
Esta es una página de más edad, y los lugares son diferentes ahora, pero esto le dará una idea: http://www.anddev.org/tutorial_change_look_of_checkbox-t4553.html
Puede utilizar las propiedades scaleX y escamosos, a continuación, utilizar translationX y translationY para ponerlo en las ventanas 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" />
Me relpaced RadioButton
con ToggleButton
y aplicada mismo estilo. Hice fondo de anulación y el botón.
<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"/>
y estilo:
<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>
funciona para mí -. Tiene el mismo aspecto, pero con altura personalizada
Si su RadioButton está en el RadioGroup, se necesita personalizar oyente, cheque Android: ¿Cómo obtener una 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>
He hecho esto ajustando la TextSize de sí mismo RadioButton
Al igual que
android:textSize="20sp"
A continuación, se aplica a mi código;
<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" />
...
Espero que esto ayuda a alguien