2011-01-28 6 views
2

j'ai un bouton que sur le chargement est en cours de chargement rss feed.je veux charger une barre de progression jusqu'à ce que ma liste ouvre.j'ai créé une barre de progression, ça fonctionne, mais comme j'appuie sur le bouton retour pour revenir à la menu principal la barre de progression apparaît à nouveau et il ne s'arrête pas (et même pas me laisser voir mon menu) .C'est mon codeandroid progressBar problème

ProgressBar myProgressBar; 
    int myProgress = 0; 

/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle icicle) { 
    super.onCreate(icicle); 
    setContentView(R.layout.main1); 

    Button nea = (Button) findViewById(R.id.nea); 
    nea.setOnClickListener(new View.OnClickListener() { 
    public void onClick (View view) { 
    setContentView(R.layout.bar); 

    myProgressBar=(ProgressBar)findViewById(R.id.bar); 

      new Thread(myThread).start(); 

    Intent myIntent = new Intent(view.getContext(), nea.class); 
    startActivityForResult(myIntent, 0); 


    } 

    }); 

} 

puis, de la onCreate

private Runnable myThread = new Runnable(){ 

    @Override 
    public void run() { 
    // TODO Auto-generated method stub 
    while (myProgress<100){ 
     try{ 
     myHandle.sendMessage(myHandle.obtainMessage()); 
     Thread.sleep(1000); 
     } 
     catch(Throwable t){ 
     } 
    } 
    } 

    Handler myHandle = new Handler(){ 

    public void handleMessage(Message msg) { 
     // TODO Auto-generated method stub 
     myProgress++; 
     myProgressBar.setProgress(myProgress); 
    } 
    }; 
     }; 

Répondre

0

Votre activité ISN ne pas être recréé lorsque vous revenez de l'activité startActivityForResult que vous avez démarrée, donc contentView est stuc k comme R.layout.bar. Essayez de surcharger la méthode onActivityResult (int requestCode, int resultCode, Données d'intention) et en appelant setContentView (R.layout.main1); à l'intérieur pour réinitialiser votre vue. Vous devrez peut-être ajouter à nouveau le programme d'écoute au bouton.