CheckBox über ID finden - CastError

  • Hallo,


    hab schon oft auf Views per ID zugegriffen (bisher allerdings noch auf kene CheckBox). Aus irgendeinem Grund hält AndroidStudio meine CheckBox für eine TextView und schmeißt daher einen Cast Error:


    Code
    Caused by: java.lang.ClassCastException: android.widget.TextView cannot be cast to android.widget.CheckBox
                at de.eebteam.parkingapp.RegisterActivity.checkIfCheckboxChecked(RegisterActivity.java:133)
                at de.eebteam.parkingapp.RegisterActivity.fieldsCorrect(RegisterActivity.java:103)
                at de.eebteam.parkingapp.RegisterActivity.onRegisterClick(RegisterActivity.java:74)


    Greife wie immer auf die View zu:

    Java
    CheckBox myBox = (CheckBox) findViewById(R.id.register_checkbox_agb);
    boolean checked = myBox.isChecked();

    Ich kann auch keinen Fehler in meine XML finden:


    Hab schon das Projekt gecleant und Rebuilded. Hab sogar manuell all Build-Ordner gelöscht. Der Fehler bleibt. Ich habe keinfach keine Ahnung wo der die TextView her nimmt. Vielleicht bringen ein paar "neutrale" Augen die Lösung.


    Grüße
    dk89

  • 1. Als Erstes sicherstellen dass Du wirklich das richtige XML bearbeitest und nicht irgendeine Kopie im falschen Ordner. (Ist ein blöder Fehler der manchmal einfach passiert).
    2. Versuch mal den id Namen zu ändern.
    3. Falls Du mit Android Studio arbeitest und die id über den "Design" Modus geändert hast, dann schau mal, ob er den Eintrag im Design Modus und im XML übereinstimmen.
    4. Falls Du gar nicht mehr weiterweist. Dann öffnen ein neues Projekt und kopiere die alten Files darein. Eigentlich ist es das gleiche wie ein Rebuilt aber es kann manchmal Wunder bewirken.


    Mfg,


    Kani

    Zitat von androidKani


    Wer programmiert kann scheitern aber wer nicht programmiert der ist schon gescheitert!

  • Also,


    im Designmodus lautet die ID: register_checkbox_agb in der XML: @+id/register_checkbox_agb. Namen geändert hab ich schon, hab sogar schon ne neue Checkbox angelegt.


    Die XML der Activity heist activity_register.xml und wird in der JAVA FILE mit:


    Java
    @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_register);
        }

    aufgerufen.


    Build Clean und Buid REbuild habe ich schon gemacht.


    Ich hänge mal XML und JAVA in den ANHANG. Die Exception wird in Zeile 131 geworfen. Ich hoffe einer findet was...


    PS: Der Fehler kommt übrigends auf meinem Device und in der VM. Dachte erst das vll da was falsch läuft....


    Greetz
    dk89

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!