2011-12-12 76 views
0

任何人都可以幫助我如何把進度對話框加載5秒,並顯示一個快速後?下面的代碼:Android:進度對話框和吐司

btnSend.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View view) { 
       String phoneNo = editTextRecipient.getText().toString(); 
       String message = editTextNewMessage.getText().toString(); 
       setResult(RESULT_OK); 
       saveState(phoneNo, message); 

       final Toast toast = Toast.makeText(getBaseContext(), 
         "Your message " + "\"" + message + "\"" + " is sent to " +"\""+ phoneNo+"\"", 
         Toast.LENGTH_SHORT); 
       toast.show(); 
       Intent setIntent = new Intent(Edit_Message.this, Main.class); 
       startActivity(setIntent); 
      } 
     }); 
    } 

我想提出一個5秒進度對話框,並提示該郵件已發送切塊。誰能幫我?

回答

1

請試試這個

showProgress(); 
    new Handler().postDelayed(new Runnable() { 

     @Override 
     public void run() { 
      dialog.cancel(); 
      Intent i=new Intent(getApplicationContext(),Main.class); 
      startActivity(i); 
      finish(); 

     } 
    }, 5000); 


private ProgressDialog dialog; 
public void showProgress() { 
    dialog = new ProgressDialog(this); 
    dialog.setCancelable(true); 
    dialog.setMessage("Please wait"); 
    dialog.show(); 

} 
+0

我應該在哪裏放置showProgress();?在onClick裏面? – Kev

+0

是的,把第一塊代碼放入你的onClick。 – Sandy

+0

看來5秒延遲不起作用。 – Kev

0

如果你真的需要做出陸侃條5秒,隨後進度對話框& Java線程是使用** Progress dialog**但如果你需要動態再AsyncTask是最佳使用方法。 根據您的描述,您需要在完成加載後提出Toast,然後您可以在完成線程後或在asynctaskonPostExecute()中使用它。