android 登錄,發送等待ProgressDialog(多線程)

常常需要在登錄,發送或者其他時候需要等待網絡,爲了增加用戶體驗,這裏使用了ProgressDialog


下面直接放代碼

	ProgressDialog dialog;//新建一個ProgressDialog
	protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.database);
		dialog = ProgressDialog.show(this, "Loading...","Please wait..."); //彈出ProgressDialog
		new login().start();//開始後臺做你要做的事情
		}

class login extends Thread{
		public void run() 
		{
		//你要做的事情
		message.what = 0; 	//做完後發個通知,關掉ProgressDialog和做些後續工作
		mHandler.sendMessage(message);
		}
	}
	
  private Handler mHandler = new Handler() {  
        @Override  
        public void handleMessage(Message msg) {  
                // TODO Auto-generated method stub  
        		if(msg.what==0)//接收到通知後
        		{
        			Toast.makeText(getApplicationContext(), "hello world!",Toast.LENGTH_SHORT).show();
        		}
                if (dialog.isShowing()) {  //如果ProgressDialog爲打開狀態,則關閉
                    dialog.dismiss();  
            }  
        }  
};

這代碼直接可以出現的效果如上圖所示


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章