Warum funktioniert der ProgressDialog nicht

  • Antworten:1
Moral Mailus
  • Forum-Beiträge: 13

05.07.2011, 18:33:41 via Website

Hallo zusammen,

folgendes Problem: Ich versuche einen ProgressDialog in einer meiner Activities erscheinen zu lassen. Eigentlich nach dem Drücken eines Buttons. Das ist allerdings nicht wirklich von Bedeutung denke ich, da es vorher auch nicht funktioniert. Jetzt erstmal eine Frage. Kann ich ein ProgressDialog auch ohne einen Thread, den ich starte, anzeigen lassen? Das sollte doch gehen oder?

Kann ich nicht
1final ProgressDialog pd = ProgressDialog.show(
2 this,
3 "Bitte warten...",
4 "Prüfe Daten",
5 true);
6
7 for(int i = 0;i<10000;i++){
8 Log.d(TAG,String.valueOf(i));
9 }
10 pd.dismiss();
die For-Schleife durchlaufen lassen und dann den Dialog Beenden?

Muss ich immer
1final ProgressDialog pd = ProgressDialog.show(
2 this,
3 "Bitte warten...",
4 "Prüfe Daten",
5 true);
6 new Thread(){
7 public void run(){
8 for(int i = 0;i<10000;i++){
9 Log.d(TAG,String.valueOf(i));
10 }
11 pd.dismiss();
12 }
13 }.start();
einen Thread starten?

Egal wie ich es versuche, es will kein ProgressDialog angezeigt werden... Wenn ich allerdings in einer Activity zuvor einen ProgressDialog mit Thread starte und per intent eine neue Activity aufrufe, bekomme ich - solange die for-schleife in der activity noch läuft - einen ProgressDialog angezeigt, wenn ich über den Back-Button in diese Activity zurück wechsele.

bin am verzweifeln... So ein simples Ding und ich bekomme es nicht gebacken...

Vielen Dank für eure Hilfe...

Antworten
Gelöschter Account
  • Forum-Beiträge: 80

05.07.2011, 23:57:20 via Website

Hallo,

also ein ProgressDialog setzt schonmal keinen Thread vorraus, der funktioniert auch so. In deinem ersten Bsp. ist wahrscheinlich die Schleife einfach viel zu schnell durchlaufen, sodass er erst gar nicht angezeigt wird, sondern direkt wieder geschlossen. Lass das pd.dismiss(); einfach mal weg, dann bekommst du auch einen ProgressDialog angezeigt.
Aber Threads sind schon nicht verkehrt ;-)
Kommt halt darauf an für welche Art von "Progress" du den Dialog brauchst.

Gruß,
Manu

Antworten