AsyncTask执行网络操作,网络有响应后,发送消息给UI线程,让UI线程来显示响应的toast。
private void toast(String content) {
// TODO Auto-generated method stub
Toast.makeText(Activity_Register.this, content, Toast.LENGTH_LONG).show();
}
Handler myHandler = new Handler() {
// 2.重写消息处理函数
public void handleMessage(Message msg) {
switch (msg.what) {
// 判断发送的消息
case 0:
// 更新View
toast("注册失败");
break;
case 1:
toast("注册成功");
Variable.telephone = telephone;
Intent intent = new Intent(Activity_Register.this,
Activity_Personal.class);
startActivity(intent);
// Variable.user = register_et_user.getText().toString().trim();
finish();
break;
}
super.handleMessage(msg);
}
};
class RegisterTask extends AsyncTask<String, Integer, String> {
Message message = new Message();
@Override
protected String doInBackground(String... params) {
// TODO Auto-generated method stub
response = new Util_Interaction().register_connecting(post);
return null;
}
@Override
protected void onPostExecute(String result) {
// TODO Auto-generated method stub
System.out.println("response:" + response);
if (!response.equals("1")) {
message.what = 0;
myHandler.sendMessage(message);
return;
}
message.what = 1;
myHandler.sendMessage(message);
super.onPostExecute(result);
}
}