Jetzt kostenlos registrieren. Mitglieder surfen ohne Werbung auf Android-Hilfe.de!
Zurück   Android-Hilfe.de > Android Developer > Android App Entwicklung

RadioButtons -> RadioGroup

Das Thema "RadioButtons -> RadioGroup" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.


Antwort

 

Themen-Optionen Ansicht
Alt 07.10.2011, 14:40   #1 (permalink)
Fortgeschrittenes Mitglied

Modell: HTC Sensation

Registriert seit: 31.08.2011
Beiträge: 390
Abgegebene Danke: 25
Erhielt 59 Danke für 57 Beiträge
Frage RadioButtons -> RadioGroup

Hallo,

ich tu mir gerade schwer, meine RadioButtons zu einer Group zusammenzufassen, damit jeweils nur 1 Button aktiv sein kann.

das Problem ist, daß ich im Layout die RadioButtons nicht alle schön hintereinander stehen habe, wie man es ist den Beispielen immer sieht.

Mein Layout sieht etwa so aus:
LinearLayout vertical
|- TextView
|- LinearLayout horizontal
| |- TextView
| |- EditText
| |- RadioButton1
|
|- LinearLayout horizontal
| |- TextView
| |- EditText
| |- RadioButton2
|
|- LinearLayout horizontal
| |- TextView
| |- EditText
| |- RadioButton3
|
|- LinearLayout horizontal
| |- TextView
| |- EditText
| |- RadioButton4

wie bekomm ich es jetzt gescheit hin, die RadioButtons in eine RadioGroup zu bringen?

habs zuerst über den Code versucht, die RadioButtons per id geholt und dann versucht, in einer RadioGroup zu stecken. aber dann kommt die meldung, daß der RadioButton bereits eine parent view hat.

dann hab ich unterhalb des 1. TextViews eine RadioGroup im XML angelegt, aber das klappt irgendwie auch nicht, zumal man ja width, height und orientation angeben soll.

in java swing konnt man einfach ne gruppe anlegen, die buttons hinzufügen und schon hatte man die funktionalität.

sowas wie "parentGroup" oder "groupID" als eigenschaft beim RadioButton hab ich auch nicht gefunden. deswegen hab ich momentan keine idee mehr, wie ich die buttons in die gruppe bringe.

kann mir jemand nen tip geben? oder ist es mit meinem layout so nicht möglich und ich muß die funktionalität für die RadioButtons manuell im listener nachprogrammieren?


gruß,
tom
Tom299 ist offline   Mit Zitat antworten
Alt 11.10.2011, 10:23   #2 (permalink)
Junior Mitglied

Registriert seit: 06.09.2011
Beiträge: 38
Abgegebene Danke: 2
Erhielt 5 Danke für 5 Beiträge
Standard AW: RadioButtons -> RadioGroup

Moinsen,

Ich würde nen workarround vorschlagen wenn es nicht gehen sollte die aus dem LinearLayout rauszuholen und in eine RadioGroup zu packen.

Und zwar die einzelnen horizontal-ausgerichteten LinearLayouts weg nehmen, das vertikale LinearLayout zu einem RelativeLayout und dort dann die einzelnen Elemente so anordnen wie dus brauchst. Am bessten mit android:layout_weight arbeiten, um es richtig auszurichten. Damit ist auch eine RadioGroup kein Thema mehr, da die RadioButtons alle im selben parent liegen.


MfG nijoX
nijoX ist offline   Mit Zitat antworten
Alt 11.10.2011, 10:57   #3 (permalink)
Fortgeschrittenes Mitglied

Modell: HTC Sensation

Registriert seit: 31.08.2011
Beiträge: 390
Abgegebene Danke: 25
Erhielt 59 Danke für 57 Beiträge
Standard AW: RadioButtons -> RadioGroup

ja, ans relative layout hatte ich auch gedacht. aber irgendwie ist das ganze doch nicht so ausgereift mit der radio group. wieso muß eine radio group überhaupt ne view sein ... aber wat solls

ich habs jetzt einfach von hand überprüft, das ging auf jeden fall viel schneller als das ganze layout umzustellen ;-)
Tom299 ist offline   Mit Zitat antworten
Alt 11.10.2011, 11:40   #4 (permalink)
Junior Mitglied

Registriert seit: 06.09.2011
Beiträge: 38
Abgegebene Danke: 2
Erhielt 5 Danke für 5 Beiträge
Standard AW: RadioButtons -> RadioGroup

so nach dem Motto isChecked();?
nijoX ist offline   Mit Zitat antworten
Alt 11.10.2011, 12:19   #5 (permalink)
Fortgeschrittenes Mitglied

Modell: HTC Sensation

Registriert seit: 31.08.2011
Beiträge: 390
Abgegebene Danke: 25
Erhielt 59 Danke für 57 Beiträge
Standard AW: RadioButtons -> RadioGroup

ja, so in der art:

Code:
    @Override
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
        RadioButton radio = (RadioButton)buttonView;
        if (radio != null) {
            buttonStart.setEnabled(true);
            if (checkedRadioButton == 0) {
                // nothing to uncheck, ony store the checked button
                checkedRadioButton = radio.getId();
            }
            else {
                RadioButton uncheckRadio = (RadioButton)findViewById(checkedRadioButton);
                uncheckRadio.setChecked(false);
                checkedRadioButton = radio.getId();
            }
        }
    }
    
    private boolean checkResult() {
        if (checkedRadioButton != 0) {
            if (R.id.id_radio_1 == checkedRadioButton) {
                if (progressBar1.getProgress() == 100) {
                    return true;
                }
            }
            else if (R.id.id_radio_2 == checkedRadioButton) {
                if (progressBar2.getProgress() == 100) {
                    return true;
                }                
            }
            else if (R.id.id_radio_3 == checkedRadioButton) {
                if (progressBar3.getProgress() == 100) {
                    return true;
                }                
            }
            else if (R.id.id_radio_4 == checkedRadioButton) {
                if (progressBar4.getProgress() == 100) {
                    return true;
                }                
            }
            else if (R.id.id_radio_5 == checkedRadioButton) {
                if (progressBar5.getProgress() == 100) {
                    return true;
                }                
            }
            else if (R.id.id_radio_6 == checkedRadioButton) {
                if (progressBar6.getProgress() == 100) {
                    return true;
                }                
            }
        }
        
        return false;
    }
über die id kann ich ja feststellen, welcher radio selektiert wurde (also R.id.radio_x) und merk mir den int-wert und später beim check kann ich dann die id vergleichen.
Tom299 ist offline   Mit Zitat antworten
Antwort

Stichworte
-

Themen-Optionen
Ansicht


Ähnliche Themen

Thema Autor Forum Antworten Letzter Beitrag
RadioButtons rechts stappi Android App Entwicklung 0 25.06.2011 17:23
RadioGroup id auslesen chris2707 Android App Entwicklung 0 22.04.2011 10:53




Du liest gerade: "RadioButtons -> RadioGroup" unter "Android App Entwicklung" auf Android-Hilfe.de.


Powered by vBulletin®
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
© Android-Hilfe.de 2012 - All rights reserved.