Obtenez le tableau de RadioButtons dans un RadioGroup dans Android

Est-il un moyen d'obtenir un tableau (ou une collection) de la RadioButtons dans un Android RadioGroup? Je voudrais ajouter des écouteurs individuels aux boutons radio, mais je ne vois aucun moyen évident d'itérer sur eux.

24
demandé sur Tim 2011-02-23 22:56:17

2 réponses

Cela devrait faire l'affaire:

        int count = radioGroup.getChildCount();
        ArrayList<RadioButton> listOfRadioButtons = new ArrayList<RadioButton>();
        for (int i=0;i<count;i++) {
            View o = radioGroup.getChildAt(i);
            if (o instanceof RadioButton) {
                listOfRadioButtons.add((RadioButton)o);
            }
        }
        Log.d(TAG,"you have "+listOfRadioButtons.size()+" radio buttons");
47
répondu zrgiu 2011-02-23 20:54:04

Pourquoi avez-vous besoin d'interroger le radioGroup? Pourquoi ne pouvez-vous pas directement définir vos auditeurs sur le RadioButton, vous devez être en mesure de mettre la main sur les radioButtons puisque vous êtes celui qui les ajoute au RadioGroup.

Indépendamment, RadioGroup est simplement un type spécial de LinearLayout, tous ses enfants sont des RadioButtons que vous avez ajoutés. Vous pouvez parcourir toutes les vues enfants pour accéder aux boutons radio.

0
répondu Veeresh 2011-02-23 20:08:21