Boîte de Dialogue de progression sur l'ouverture à l'activité

hé les gars,
j'ai un problème avec la boîte de dialogue de progression sur l'ouverture d'une activité (appelée activité 2 dans l'exemple).
L'activité 2 a beaucoup de code à exécuter à cet événement OnCreate.

final ProgressDialog myProgressDialog = ProgressDialog.show(MyApp.this,getString(R.string.lstAppWait), getString(R.string.lstAppLoading), true);
new Thread() {
    public void run() {
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                showApps();
            }
        });
        myProgressDialog.dismiss();
    }
}.start(); 

La showApps fonction de lancement de l'activité 2.

si j'exécute ce code sur mon bouton cliquez sur l'événement sur l'activité 1, je vois la progression, mais elle ne bouge pas et afeter j'ai un écran noir pendant 2 ou 3 secondes, le temps pour android pour montrer l'activité.

Si j'exécute ce code dans le OnCreate de Activity2 et si je remplace le showApps par le code de la OnCreate, Activity1 gel 2 secondes, je ne vois pas la boîte de dialogue de progression, et de geler à nouveau 2 secondes sur l'activité 2 avant de voir le résultat.

Une idée ?

Vous créez un Thread qui va exécuter le code qui s'exécute dans le Thread de l'INTERFACE utilisateur?! Est-ce un hack/solution de contournement, j'ai besoin de savoir ou est-ce juste un mauvais?
Hey @WarrenFaith, pourriez-vous me coup de pied un solide et d'accepter mes haut-voté réponse à cette question?
pas à ma question 🙂
Embarrassé, je suis...merci Warren 😉
Hey @Pachanka, pourriez-vous me coup de pied un solide et d'accepter mes haut-voté réponse à cette question?

OriginalL'auteur Pachanka | 2010-11-23