Pregunta

Tengo muchos RadioButtons en mi aplicación. Los botones de opción son demasiado grandes para mí. ¿Hay alguna manera de hacerlos más pequeños?

¿Fue útil?

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

<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

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top