Toast erscheint zu spät

  • 3 Antworten
  • Letztes Antwortdatum
D

DrHouse29

Neues Mitglied
0
Hallo,

ich bin Verzweifle grade an etwas, was ich absolut nicht nachvollziehen kann.

Und zwar: wenn ich auf einem Button klicke, sollte erst das Object Toast angezeigt werden und dann die Methode refresh() ausgeführt werden. Tatsache ist aber, dass die Zeilen in dem ich das Toast definiere und auch anzeigen lassen (show()) durchlaufen werden und danach erst die refresh-Methode, ich auf der Grafischen oberfläche das Toast erst angezigt bekomme wenn die Methode refresh() komplett durchlaufen ist. Mit einem AlertDialog ist es genau das selbe.

Hier mal der Code:


Code:
 Toast.makeText(getApplicationContext(), "msg msg", Toast.LENGTH_SHORT).show();
				
refresh()


Edit: hab den code korrigiert. In der refresh() methode geschieht etwas was die gui ebenfalls einfrieren laesst. Gibt es eine moeglichkeit, dass das programm erst weiter lauft wenn der toast angezeigt wurde?

Danke im Vorraus, Christoph.
 
Zuletzt bearbeitet:
du startest den toast und im (fast) gleichen moment blockierst du den ui thread mit deinem sleep

mal abgesehen davon seh ich keine methode refresh hier?
 
Ich habe meinen ersten Post editiert.
 
also du kannst einfach einen handler nutzen. über diesen dann nach x sekunden ein runnable aufrufen.

du darfst den ui thread nicht einführen.

wenn du aber unbedingt die usermessage (toast) abwarten musst, ist der toast vielleicht gar nicht das richtige für dich. evtl blendest dann einen dialog ein, den der user bestätigen muss.
 
Zurück
Oben Unten