K
KaNuNSuZ_oFLu
Neues Mitglied
- 0
Hallo.. wieder ich
tut mir leid, falls meine Fragen langsam zu lästig werden.. Schnell zu meinem Problem.. Und zwar habe ich eine App, die Daten aus dem Internet laden soll.. Nun dafür habe ich eine Methode initialise() geschrieben.. Nur möchte ich nicht, dass es während des Ladevorgangs einen schwarzen Bildschirm gibt.. Auch wenn es nur ganz kurz ist.. Deswegen dachte ich mir, ich programmieren einen Dialog.. Habe eine Methode geschrieben, die folgendermaßen aussieht...
und so sieht meine initialise() Methode aus
sprich ich umklammere die Methode initialise() mit der Methode makeMeWait()..
soll den Zweck haben, dass er bevor er der Methode beitritt den Dialog sichtbar machen soll.. und nachdem er ausgetreten ist, soll er wieder unsichtbar werden..
Nur funktioniert das ganze nicht wie ich es will... Irgendwie zeigt er mir gar nichts an.. ich dachte anfangs, dass ich gar nicht in die Methode makeMeWait() eintrete, aber doch ich trete ein.. Nur ist wahrscheinlich die App so schnell in der Methode,dass ich diesen Dialog gar nicht erst sehe.. So weit so gut, aber jetzt wollte ich mit Klick auf einen Button etwas neues Laden und während dieses Ladevorgangs auch einen Dialog anzeigen lassen.. Siehe da mit klick auf den button hängt sich das Programm für 1-2 sekunden auf (wahrscheinlich ladet es die Daten) und springt dann OHNE den Dialog-Fenster angezeigt zu haben, in die andere Activity..
Was mach ich hier eigentlich falsch? Kann mir jemand behilflich sein?
Code:
private void makeMeWait () {
if ((mySpinnerDialog== null) || (!mySpinnerDialog.isShowing())) {
mySpinnerDialog= new Dialog(this);
mySpinnerDialog.getWindow().getCurrentFocus();
mySpinnerDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
mySpinnerDialog.setContentView(R.layout.loading);
mySpinnerDialog.setCancelable(false);
mySpinnerDialog.setOwnerActivity(this);
mySpinnerDialog.show();
} else {
mySpinnerDialog.setOwnerActivity(this);
mySpinnerDialog.dismiss();
}
}
und so sieht meine initialise() Methode aus
Code:
private void initialise() {
makeMeWait();
//... Code-Schnipsel
makeMeWait();
sprich ich umklammere die Methode initialise() mit der Methode makeMeWait()..
soll den Zweck haben, dass er bevor er der Methode beitritt den Dialog sichtbar machen soll.. und nachdem er ausgetreten ist, soll er wieder unsichtbar werden..
Nur funktioniert das ganze nicht wie ich es will... Irgendwie zeigt er mir gar nichts an.. ich dachte anfangs, dass ich gar nicht in die Methode makeMeWait() eintrete, aber doch ich trete ein.. Nur ist wahrscheinlich die App so schnell in der Methode,dass ich diesen Dialog gar nicht erst sehe.. So weit so gut, aber jetzt wollte ich mit Klick auf einen Button etwas neues Laden und während dieses Ladevorgangs auch einen Dialog anzeigen lassen.. Siehe da mit klick auf den button hängt sich das Programm für 1-2 sekunden auf (wahrscheinlich ladet es die Daten) und springt dann OHNE den Dialog-Fenster angezeigt zu haben, in die andere Activity..
Was mach ich hier eigentlich falsch? Kann mir jemand behilflich sein?