Pergunta

eu tenho muitos RadioButtonestá no meu aplicativo. Os radiobutões são grandes demais para mim. Existe alguma maneira de torná -los menores?

Foi útil?

Solução

Não pode ser feito, o botão de rádio é um componente de controle interno e, como tal, seu tamanho é corrigido.

Outras dicas

Uma solução rápida de hacky é escalar o botão:

<RadioButton
  android:scaleX="0.5"
  android:scaleY="0.5" />

Isso funciona muito bem para ficar menor.

Para aumentar, isso tende a causar alguns recortes da visualização do contêiner; portanto, você provavelmente precisará codificar a altura/largura do radiograma para ajustar os botões em escala. O botão desenhado também pode ficar visivelmente pixelado quanto maior você vai, então não é realmente ótimo se você quiser algo 3x maior ...

Isto posso ser feito, mas não é tão simples quanto definir o layout_width e o layout_height como no EditTexts, botões etc. Para modificar o tamanho/aparência de uma vista como uma caixa de seleção/botão de rádio Use as propriedades "Background" e "Button" para especificar seus próprios travestis .

Esta é uma página mais antiga, e os locais são diferentes agora, mas isso lhe dará uma ideia:http://www.anddev.org/tutorial_change_look_of_checkbox-t4553.html

Você pode usar propriedades Scalex e Scaley e, em seguida, usar o TranslationX e a tradução para colocá -lo nas janelas do 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" />

Eu relacei RadioButton com ToggleButton e aplicou o mesmo estilo. Eu substituí o fundo e o botão.

    <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 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 mim - parece o mesmo, mas com altura personalizada.

Se o seu radiobutton estiver no radiograma, você precisará personalizar o ouvinte, verifiqueAndroid: Como obter um radiograma com o 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>

Eu fiz isso ajustando o texto do próprio Radiobutton

Igual a

android:textSize="20sp"

Em seguida, aplique no meu 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 essa ajuda para alguém

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top