2012-04-04 15 views
0

Hier ist der Code meiner Schaltfläche Aktivität, ich habe es geschafft, einen Fortschrittdialog hinzuzufügen, wenn die activity sciencetechnology lädt seine Shows loading..only es dreht sich nicht so ich frage mich, was ich falsch mache, maby kann jemand für meinen Fehler hier ist der Code:ProgressDialog Rad dreht sich nicht

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(); 


     } 
    }); 


} 

} 

Antwort

0

Die Art, wie Sie es tun, ist derzeit unkonventionell.

Um die Spinn Stil Aktion vor ICS erhalten Sie

showDialog(int); 

und

onCreateDialog(int); 

den Spinner Stil zu überschreiben, rufen sollte.

nach ICS haben sie all dies mit dem FragmentManager ersetzt Also sollten Sie das verwenden, um die Spinning-Aktionen zu erstellen.

0

Sie müssen AsynTask in Android lieber als Thread verwenden.

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(); 
    } 

}