Autore Topic: ProgressDialog visualizzata per pochi millesimi di secondo  (Letto 1129 volte)

Offline Pecas

  • Nuovo arrivato
  • *
  • Post: 47
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung GS2
ProgressDialog visualizzata per pochi millesimi di secondo
« il: 29 Agosto 2012, 14:16:56 CEST »
0
Salve a tutti,

ho un problema con la ProgressDialog.
Dopo averle provate tutte vi chiedo aiuto perchè la mia Dialog si visualizza per pochi millisecondi e poi si chiude. In mezzo ci sono istruzioni corpose tipo download di un file e inserimento di 3000 record nel db. Cioè almeno un 20 sec di roba da elaborare.
Vi posto il codice per esemplificare:
Codice (Java): [Seleziona]
final ProgressDialog progressDialog;
                            // ...
                            progressDialog = ProgressDialog.show(Contacts.this, "","Please wait...", true);
                            new Thread(new Runnable()
                    {
                                public void run() {
                                    try{
db.open();
                                                                db.dropContacts();
                                                                Log.v("dbsync", "DB TABLE CONTACTS CANCELLATA!");
                                                        db.close();
SyncContacts();
Toast.makeText(Contacts.this, "Caricamento terminato!", Toast.LENGTH_SHORT);
} catch (Exception e) { }
                                    progressDialog.dismiss();
                                }
                    }).start();
                           

SyncContacts() è una funzione che sta nella stessa Activity e fa il download del file e l'inserimento nel DB.

Da quello che mi sembra, e potrei sbagliare, ho capito che se richiamo SyncContacts() praticamente la vita dell'evento onClick cessa di esistere. Oppure, come avviene ora, SyncContacts() messo nel nuovo Thread() non viene proprio eseguita.

Che posso fare?

Grazie!!!!

Offline Khali

  • Utente junior
  • **
  • Post: 70
  • Respect: +7
    • u.felloni
    • Mostra profilo
  • Play Store ID:
    weetme software
  • Sistema operativo:
    windows 7
Re:ProgressDialog visualizzata per pochi millesimi di secondo
« Risposta #1 il: 29 Agosto 2012, 15:35:00 CEST »
0
Domanda banale:
Che venga lancia un' eccezione, catturata nel blocco catch ed eseguita la progressDialog.dismiss(), l'hai già escluso, vero?

Aiutati con il debug

Offline Pecas

  • Nuovo arrivato
  • *
  • Post: 47
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung GS2
Re:ProgressDialog visualizzata per pochi millesimi di secondo
« Risposta #2 il: 29 Agosto 2012, 16:16:13 CEST »
0
Domanda banale:
Che venga lancia un' eccezione, catturata nel blocco catch ed eseguita la progressDialog.dismiss(), l'hai già escluso, vero?

Aiutati con il debug
Si avevo già provato.
Ho comunque risolto con questa guida:
http://www.anddev.it/index.php/topic,737.0.html

Avevo bisogno di un Thread Asyncrono. Tra l'altro ora posso anche dare info all'utente! Decisamente molto + completo di prima!!!!