J'utilise une barre de progression dans android, de sorte que jusqu'à ce que mes données soient chargées, l'utilisateur reçoit une rétroaction adéquate de ce qui se passe. le code de la barre est au-dessous:L'utilisation de la barre de progression finit par ne pas remplir la vue par liste
final ProgressDialog myProgressDialog;
myProgressDialog = ProgressDialog.show(ListingPage.this,"Please Wait", "Loading Date", true);
new Thread() {
public void run() {
try{
setSelected();
sleep(5000);
} catch (Exception e) { }
myProgressDialog.dismiss();
}
}.start();
Procédé setSelected() est l'insertion de données dans une liste de réseau, puis la création d'un adaptateur de réseau, puis en utilisant un affichage de liste pour afficher ces éléments. Donc quand je mets la méthode setSelected() dans la barre de progression, elle montre le cercle de chargement, mais une fois le chargement terminé. Rien n'est affiché dans listview. Mais si j'enlève le code barre de progression (méthode thread et run), et que j'appelle simplement la méthode setSelected(), la listview déclare les données avec succès. jusqu'à présent, il conclut que le code à barres de progrès est en train de faire quelque chose ... Je voulais donc savoir s'il me manque quelque chose à ajouter ou à retirer du code. J'ai besoin de la barre de progression de l'émission pendant que je lis les données de la source en ligne et cela prend du temps, ce qui peut rendre l'utilisateur mal à l'aise.
Janusz! J'ai utilisé la méthode que vous avez dit ci-dessus mais, la barre de recherche se bloque sur le chargement du code est: nouvelle AsyncTask() { // Ceci est fait en arrière-plan protected Void doInBackground (Void ... params) { setSelected(); return null; } // Cet ID est effectué dans le thread d'interface utilisateur protected void onPostExecute (Résultat long) { populateList (data); myProgressDialog.dismiss(); } } .execute(); Je suppose que le fil est suspendu .. est-ce ?? –
kaibuki
désolé j'ai besoin de plus de code alors ceci pour vraiment trouver une erreur ici. Essayez de l'éditer dans votre question d'origine – Janusz