Beiträge von Chris303

    Hallo,


    vielen, vielen Dank für die erhellenden Worte.


    Also habe ich im Prinzip gar nicht so viel Missverstanden, diese Schreibweise ist mir nur alles Andere als geläufig. Werde mich da nochmal schlau machen.
    Und ja, über die Namensgebung musste ich auch schmunzeln .. :)


    Es ärgert mich tatsächlich ein wenig, dass das nicht wirklich mal erklärt wurde - wenn mir sowas noch öfter begegnet werde ich mich dann wohl noch mal nach Alternativen zum Lernen umsehen müssen.


    Grüße
    Chris303

    Hallo,


    ich bin noch grüner wie grün in Sachen Android-Programmierung und habe gestern angefangen mich einzulesen und vor Allem einzurichten.


    Meine Java-Kenntnisse übrigens sind durchwachsen. Größtenteils komme ich gut zurecht, es gibt aber Facetten von Java, von denen ich bisher noch nie wirklich Gebrauch gemacht habe. im GUI-Bereich habe ich auch keine Erfahrung.


    Doch zurück zu Android. Nach einem ganz groben Überblick durch feie Infos dient mir zum Lernen nun "Android 4 Apps entwickeln mit dem Android SDK" von Thomas Künneth (für weitere Empfehlungen bin ich offen). Dort bin ich bei dem Anwenden des OnClickListeners angekommen, allerdings tun sich bei mir Fragezeichnen auf, was dort genau geschieht. Zunächst ein Codeschnipsel:



    weiter_fertig ist übrigens eine Referenz auf ein Objekt vom Typ Button.


    Soweit ich unabhängig von dem Code das Prinzip verstehe ist OnClickListener erstmal nur ein Interface, dass besagt, dass die
    Methode "onClick (View v)" implementiert werden muss.


    Meine eigene logische Schlussfolgerung wäre, dass ich also zunächst eine Klasse, sagen wir namens "ListenMe" erstelle, die onClickListener implementiert. Darin kann ich dann durch überschreiben von onClick(View v) bestimmen, was beim Click geschehen soll.
    Das Ganze würde ich dann per

    Code
    weiter_fertig.setOnClickListener(new ListenMe())


    dem Button-Objekt zuweisen.


    Nun ist es aber nicht so, wie ich denke, sondern es steht dieses für mich seltsam erscheinende Code-Konstrukt im Raum.
    Dabei wird über "new OnClickListener()" eine Instanz des Interfaces erzeugt? Das ist doch Quatsch - geht doch meines Wissens nach gar nicht? Auch kenne ich die Schreibweise mit dem dahinterstehenden Block nicht.
    Was will mir also dieses Stückchen Code genau sagen ?


    Hoffe jemand kann Licht in mein Dunkel bringen.


    Vielen Dank
    Chris303