2012-04-04 9 views
0

Voici le code de mon activité de bouton, j'ai réussi à ajouter un progressdialog alors quand l'actvity sciencetechnology est en train de charger ses spectacles de chargement .. seulement il ne tourne pas donc je me demande ce que je fais mal, quelqu'un peut Maby chercher mon erreur ici est le code:ProgressDialog roue ne tourne pas

package net.thinkbin; 

import android.app.Activity; 
import android.app.ProgressDialog; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.view.Window; 
import android.widget.Button; 

public class tutorial1 extends Activity{ 

private ProgressDialog progressDialog; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    // TODO Auto-generated method stub 
    requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.tutorial1); 

    Button share = (Button) findViewById(R.id.button2); 
    share.setOnClickListener(new View.OnClickListener() { 

    public void onClick(View v) { 
      // TODO Auto-generated method stub 
      startActivity(new Intent("net.thinkbin.SHARE")); 
      overridePendingTransition(0, 0); 
      finish(); 
     } 
    }); 

    Button menu = (Button) findViewById(R.id.buttonhome); 
    menu.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      progressDialog = ProgressDialog.show(tutorial1.this, "", "Loading..."); 
      Thread th = new Thread(new Runnable() { 
       public void run(){ 
        startActivity(new Intent("net.thinkbin.MENU")); 
        overridePendingTransition(0, 0); 
        progressDialog.dismiss(); 
        finish(); 
       } 

      }); 
      th.start(); 

     } 
    }); 

    Button culture = (Button) findViewById(R.id.button3); 
    culture.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      progressDialog = ProgressDialog.show(tutorial1.this, "", "Loading..."); 
      Thread th = new Thread(new Runnable() { 
       public void run(){ 
        startActivity(new Intent("net.thinkbin.CULTURE")); 
        overridePendingTransition(0, 0); 
        progressDialog.dismiss(); 
        finish(); 
       } 

      }); 
      th.start(); 

     } 
    }); 

    Button entertainment = (Button) findViewById(R.id.button4); 
    entertainment.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      progressDialog = ProgressDialog.show(tutorial1.this, "", "Loading..."); 
      Thread th = new Thread(new Runnable() { 
       public void run(){ 
        startActivity(new Intent("net.thinkbin.ENTERTAINMENT")); 
        overridePendingTransition(0, 0); 
        progressDialog.dismiss(); 
        finish(); 
       } 

      }); 
      th.start(); 

     } 
    }); 

    Button philosophy = (Button) findViewById(R.id.button5); 
    philosophy.setOnClickListener(new View.OnClickListener() { 

     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      progressDialog = ProgressDialog.show(tutorial1.this, "", "Loading..."); 
      Thread th = new Thread(new Runnable() { 
       public void run(){ 
        startActivity(new Intent("net.thinkbin.PHILOSOPHY")); 
        overridePendingTransition(0, 0); 
        progressDialog.dismiss(); 
        finish(); 
       } 

      }); 
      th.start(); 

     } 
    }); 

    Button sciencetechnology = (Button) findViewById(R.id.button6); 
    sciencetechnology.setOnClickListener(new View.OnClickListener() { 

        public void onClick(View v) { 
      // TODO Auto-generated method stub 
      progressDialog = ProgressDialog.show(tutorial1.this, "", "Loading..."); 
      Thread th = new Thread(new Runnable() { 
       public void run(){ 
        startActivity(new Intent("net.thinkbin.SCIENCETECHNOLOGY")); 
        overridePendingTransition(0, 0); 
        progressDialog.dismiss(); 
        finish(); 

       } 

      }); 

      th.start(); 


     } 
    }); 


} 

} 

Répondre

0

La façon dont vous le faites actuellement n'est pas conventionnelle.

Pour obtenir le style d'action de filature pré ICS, vous devez appeler

showDialog(int); 

et passer outre

onCreateDialog(int); 

pour définir le style de spinner. Après l'ICS, ils ont remplacé tout cela par le FragmentManager. Vous devez donc l'utiliser pour créer les actions de style de rotation.

0

Vous avez mieux à utiliser AsynTask dans Android plutôt que Thread.

Button sciencetechnology = (Button) findViewById(R.id.button6); 
sciencetechnology.setOnClickListener(new View.OnClickListener() { 

       public void onClick(View v) { 
     // TODO Auto-generated method stub 
     UrTask u=new UrTask(); 
     u..execute(); 


    } 
}); 

AsynTask

public class UrTask extends 
     AsyncTask<Void, Void, Void> { 

    ProgressDialog pDialog; 

    protected void onPreExecute() { 
     pDialog = new ProgressDialog(ActivityName.this); 
     pDialog.setMessage("Downloading Data..."); 
     pDialog.setCancelable(false); 
     pDialog.show(); 

    } 

    protected Void doInBackground(Void... unused) { 

     // Do ur work 

     return (null); 
    } 

    @Override 
    protected void onProgressUpdate(Void... values) { 
     // TODO Auto-generated method stub 
     super.onProgressUpdate(values); 
    } 

    protected void onPostExecute(Void unused) { 
     pDialog.dismiss(); 
    } 

}