Domanda

ho molti RadioButtons nella mia app. I pulsanti di opzione sono troppo grande per me. C'è un modo per renderli più piccoli?

È stato utile?

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

<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

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top