Methode öfter ausführen

  • 6 Antworten
  • Neuester Beitrag
Diskutiere Methode öfter ausführen im Android App Entwicklung im Bereich Betriebssysteme & Apps.
M

Ms. Stinsfire

Neues Mitglied
hallooo erstmal :D

Ich bin ein blutiger Anfänger in Android.
Ich wollte mal fragen wie ich eine Methode, die ich über einen Button aufrufe öfter ausführen kann.
Also soll zum Beispiel immer wenn der Button geklickt wird der Text eines Textviews geändert werden und das 40 mal.
Danke schon mal.
 
P

PhillippOh

Fortgeschrittenes Mitglied
du könntest beim aufruf immer eine variable hochzählen, von 0 bis 39 und mit ner if abfrage für jeden wert dann einen anderen text ausgeben lassen.
 
Vacutainer

Vacutainer

Erfahrenes Mitglied
Oder die 40 verschiedenen Strings, wenn sie von vornherein feststehen in ein Array und das mit for 40 mal setzen.
 
M

Ms. Stinsfire

Neues Mitglied
ja so hab ich das eig versucht aba irgentwie wenn ich auf den button klicke führt er die methode nur einmal aus
Code:
public void naechstesSpiel() {

for(int i = 0; i <= 40;i++) {
TextView naechstesspiel = (TextView)findViewById(R.id.textViewnaechstesspiel);
naechstesspiel.setText("Spiel " + i + ":");
}
}

Diese Methode will ich über den button aufrufen.
 
M

marvegon

Neues Mitglied
Ms. Stinsfire schrieb:
ja so hab ich das eig versucht aba irgentwie wenn ich auf den button klicke führt er die methode nur einmal aus
Kann es sein, dass er nur "Spiel 40 :" anzeigt? Falls ja würde ichdenken, dass er zwar alles durchläuft aber das ganze viel zuschnell geht um es mitverfolgen zu können. Du musst ihm sagen, dass er nach jedem Schleifendurchlauf kurz warten soll.
 
StefMa

StefMa

Experte
Wenn du die Methode aufrufst, wie du sie oben stehen hast, wird sie jedesmal aufgerufen und dann 40x die for. Denn das "int i" wird immer wieder neu initialisiert.
Du solltest dich mit Java-Grundsätzen auseinander setzten.

Dein Plan ist der:
- Setzte ein Klassenvariable und setzt sie auf 0
- Jedes mal wenn du die Methode aufrufst prüfst du diese auf 40
- Falls diese kleiner als 40 ist mache setText()
- Falls diese kleiner als 40 ist zähle die klassenvariable + 1
- Falls diese größer als 40 ist, mache eine info, dass zu viele spiele gespielt wurden..

Gruß
 
M

Ms. Stinsfire

Neues Mitglied
Danke vielmals :D

So funktioniert es.
 
Ähnliche Themen - Methode öfter ausführen Antworten Datum
6