wo ist der richtige Ort, um onclick-Listener in android-Aktivität?
wo ist die beste Stelle für onclick-Listener in android-Aktivität? Ich habe gesehen zwei verschiedene Möglichkeiten. ein Weg ist, um Sie in der onCreate-Methode, und eine weitere Möglichkeit ist, setzen Sie unten und außerhalb der onCreate-Methode.
Ich habe gerade angefangen, eine neue android-app und bin verwirrt, wo ist der beste Platz.
beide Möglichkeiten werden unten gezeigt.
psudo-code-Beispiel;
onclick-Methode innerhalb der oncreate-Methode
MainActivity extends Activity{
onCreate(){
onClick listeners
} //end of onCreate method
} //end of MainActivity class
psudo-code-Beispiel zwei;
setzen onclick-unterhalb und außerhalb der oncreate-Methode
MainActivity extends Activity{
onCreate(){
} //end of onCreate method
onClick listeners
} //end of MainActivity class
- Diese Frage konstruktiv für mich.
- Fünf Möglichkeiten, Verdrahten Sie einen Ereignis-Listener: androidcookbook.com/Recipe.seam?recipeId=2359
Du musst angemeldet sein, um einen Kommentar abzugeben.
Beide Wege richtig sind. Wie organisieren Sie den code tatsächlich für eine bessere Lesbarkeit Willen. Wenn Sie zu viele Zuhörer in
onCreate()
, ist es schwieriger, den code zu Lesen, durch danach. Wenn Sie jedoch einfach nur einen haben und es ist ein liner, es ist gut um es inonCreate()
.können Sie sogar
onClicklistener
mit xml-Datei.ich.e
in Ihrer xml-dieses tag verwenden:
android:onClick="startActivityB"
dann in der java Datei
Seine bis zu Ihnen, wie Sie möchten, schreiben Sie den code Ihrer Tätigkeit.
Wenn Sie möchten, können Sie schreiben Sie den code des onclick-in
onCreate()
,Aber wenn Sie mit mehr Tasten oder Ansichten zu handhaben und du schreibst onClick für jedes buttons oder sichten dann IhreonCreate()
so Aussehen ungeschickt .In dieser situation können Sie erstellen, die gemeinsame
onClickListener
für Ihre alle Tasten und schreiben von der Logik getrennt, das macht den code schön Aussehen, sonst können Sie gehen füronCreate()
auch.Dies ist der beste Weg für mich:
Activity
Klasse implementierenOnClickListener
? Dies verringert die Objekte zählen, und leichter zu LesenKönnen Sie die beiden Möglichkeiten . ich denke, die Arbeit mit der gleichen Dynamik
wenn Sie die zweite Methode verwenden, die Lesbarkeit von code wird gut sein,
Hinweis : Es gibt auch einen anderen Ansatz geben
onClick
in side your_layout.xml .Aber jetzt ist ein Tage-Fragmente kam, um es zu spielen, die Rolle also nicht weit verbreitet (FINDEN).Sollten Sie immer lieber die zweite. Wenn Sie es in Sie auf erstellen, es wird auch funktionieren. Aber Sie wollen nicht, es zu tun jedes mal, wenn Sie Ihre Aktivität geladen ist.
Hier ist ein Beispiel
onCreate
Aufrufe von Konstruktor der Aktivität. In beiden Fällen erstellen Sie ein Objekt und ruftsetOnClickListener
passiert nur ein mal. Wenn der Benutzer zurück auf diese TätigkeitonCreate
Methode nicht aufgerufen. developer.android.com/reference/android/app/Activity.html