显示一个ProgressDialog,然后在线程中取消

mLogin.setOnClickListener(new OnClickListener() {
			
			public void onClick(View v) {
				// TODO Auto-generated method stub	
				myDialog = new ProgressDialog(LoginActivity.this);
				myDialog.setMessage("正在与服务器连接");
				myDialog.setIndeterminate(true);
注意这里是DialogInterface.OnClickListener(),如果用alt+/提示没有这个方法,手动加,否则只有OnClickListener(),就会提示参数不对
				myDialog.setButton("取消", new DialogInterface.OnClickListener() {
					
					public void onClick(DialogInterface dialog, int which) {
						// TODO Auto-generated method stub
						
					}
				});
				myDialog.show();
				
				//myDialog = ProgressDialog.show(LoginActivity.this,"","正在与服务器连接",true);
				new myThread().start();
				
或者在这里用Handler启动线程
				/*Handler myHandler = new Handler();
				myHandler.postDelayed(new Runnable() {
					
					public void run() {
						// TODO Auto-generated method stub
						myDialog.cancel();
					}
				}, 5000);*/
				
				/*
				 * 鉴权方法
				 */
				auth.verify(mNameEdit.getText().toString(), mPasswordEdit.getText().toString());
				
			}
		});
		
	public class myThread extends Thread{
		public void run(){
			try
	          { 
	            sleep(5000);
	            myDialog.dismiss();
	          }
	          catch (Exception e)
	          {
	            e.printStackTrace();
	          }
		}
	}

你可能感兴趣的:(thread)