alertbox.show(); im Thread = Fehler

P

P8H

Neues Mitglied
0
Hallo liebe Community,
seit ein paar Monaten bin ich stolzer Besitzer eines HTC Tattoo und möchte nun auch unter den Android-Programmierer gehen. Erste kleine Tests habe erfolgreich funktioniert.

Nun bin ich an einer stellen richtig hängen geblieben, komme einfach nicht weiter.

Ich möchte aus einem Thread heraus, ein AlertDialog öffnen. Aber genau an dieser Stelle wird das App beendet.(Keine genaue Fehlerbeschreibung)

Außerhalb des Thread funktioniert der Dialog ganz normal.
Woran liegt dass? :confused:


Code:
     final AlertDialog.Builder alertbox = new AlertDialog.Builder(this);
     alertbox.setMessage("This is the alertbox!");
     alertbox.setNeutralButton("Ok", new DialogInterface.OnClickListener({public void onClick(DialogInterface arg0, int arg1) {}});


     new Thread(new Runnable(){
           public void run(){
               alertbox.show(); //Und hier gibt es den Fehler
           }
           }).start();


Gruß,
PH
 
diese alertbox kann er nicht öffnen, da er nicht im UIThread ist.

du musst dir einen handler anlegen. im thread dann handler.sendemptymessage(WHAT) aufrufen und der erzeugt dann die alertbox

btw: fehler findest du im eclipse in der debug view
 
  • Danke
Reaktionen: P8H und fugu2.0
danke für den Tip. Hatte gestern ein ganz ähnliches Problem und hab den halben Tag lang nach ner Lösung gesucht.
 
Jop, war genau das, was gefehlt hat. Nun funktioniert es, danke!

Das mit dem DebugView von Eclipse muss ich mir nochmal ansehen, es gibt mir zurzeit mehr Fragen als Antworten auf. Vorallem bei Android Apps.

Gruß,
PH
 
warum?

es gibt genau die exceptions aus, die auftreten. ohne diese view, hat man fast keine chance fehler zu finden
 

Ähnliche Themen

D
  • djsnoopy
Antworten
6
Aufrufe
613
djsnoopy
D
S
Antworten
8
Aufrufe
508
swa00
swa00
D
Antworten
3
Aufrufe
447
jogimuc
J
Zurück
Oben Unten