2011-10-09 89 views
0

我試圖讓一個活動的進度條。我已經在activity.Suppose取得了一定的控制,如果我點擊一些控制(如按鈕),然後重疊以前的活動,並在屏幕褪色有一個進度條。當進度條完成100%淡出屏幕顯示,然後淡入淡出屏幕和下一個活動顯示。現在如何顯示,顯示在屏幕淡出重疊之前的活動

我的問題是,如何才能讓顯示在(重疊)以前的活動,並淡出屏幕還包含了進度條淡出屏幕。

回答

2

療法是沒必要在意重疊。進度條始終顯示在與包含它的活動重疊的前景中。

import android.app.Activity; 
    import android.app.Dialog; 
    import android.app.ProgressDialog; 
    import android.os.AsyncTask; 
    import android.os.Bundle; 

    public class ProgressDialogDemo extends Activity { 
/** Called when the activity is first created. */ 
ProgressDialog dialog; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    dialog = new ProgressDialog(this); 
    dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); 
    dialog.setMessage("Loading..."); 
    dialog.setCancelable(true); 



    new Loader().execute(); 


} 

class Loader extends AsyncTask<Object, Object, Object> { 

    @Override 
    protected Object doInBackground(Object... params) { 
     // TODO Auto-generated method stub 
     for(int i = 0; i <= 100; i++){ 

      publishProgress(i); 
      try { 
       Thread.sleep(100); 
      } catch (InterruptedException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
     } 
     return null; 
    } 

    @Override 
    protected void onPreExecute() { 
     // TODO Auto-generated method stub 

     super.onPreExecute(); 
     dialog.show(); 
    } 

    @Override 
    protected void onPostExecute(Object result) { 
     // TODO Auto-generated method stub 
     super.onPostExecute(result); 
     dialog.dismiss(); 
    } 

    @Override 
    protected void onProgressUpdate(Object... values) { 
     // TODO Auto-generated method stub 
     super.onProgressUpdate(values); 
     dialog.setProgress(((Integer)values[0]).intValue()); 
    } 

}} 
+0

謝謝Rohit,我理解正確,並能夠實現成功。 – Nakool

相關問題