2010-06-11 4 views
3

Salutations,Android RadioButton comme comportement

Je suis en train de créer un contrôle android choix unique, dans une disposition horizontale, en utilisant le comportement RadioGroup. Je peux très bien assigner le drawable, mais je voudrais positionner l'étiquette de chaque RadioButton dans le drawable, est-ce possible en utilisant les API standard?

<RadioGroup 
    android:id="@+id/switchcontainer" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="horizontal" 
    android:checkedButton="@+id/RadioButton02" 
    android:padding="3dip">    

    <RadioButton 
     android:text="id RadioButton02" 
     android:id="@+id/RadioButton02" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:button="@drawable/radio_button" 
     android:paddingRight="2dip" /> 

    <RadioButton 
     android:text="@+id/RadioButton03" 
     android:id="@+id/RadioButton03" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:button="@drawable/radio_button" 
     android:paddingRight="2dip" />> 

</RadioGroup> 

Répondre

11

D'accord, je l'ai trouvé un moyen.

Il suffit d'utiliser @null le bouton d'attribut, et déplacer la référence étirables à l'arrière-plan d'attribut comme ceci:

<RadioGroup 
    android:id="@+id/switchcontainer" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="horizontal" 
    android:checkedButton="@+id/RadioButton02">    

    <RadioButton 
     android:text="id RadioButton02" 
     android:id="@+id/RadioButton02" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:background="@drawable/radio_button" 
     android:button="@null"/> 

    <RadioButton 
     android:text="@+id/RadioButton03" 
     android:id="@+id/RadioButton03" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:background="@drawable/radio_button" 
     android:button="@null"/> 

</RadioGroup> 
0

Je ne suis pas sûr avec le RadioGroup; Cependant, il devrait être possible d'accomplir ceci avec un ListView.

Définissez le mode de sélection ListView sur singleChoice.

Fournissez un ArrayAdapter ou un SimpleAdapter avec un fichier de disposition personnalisé pour la ligne. Cela vous permet de configurer la position de l'étiquette.

Pour une intro rapide à ListView de, voir Hello ListView

+0

Je suis désolé, j'ai oublié de mentionner que je voulais une disposition horizontale. Juste édité. – monxalo