2011-12-12 77 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()中使用它。