Handler,消息的处理

import java.util.Map;
import org.json.JSONException;
import com.lidroid.xutils.HttpUtils;
import com.lidroid.xutils.exception.HttpException;
import com.lidroid.xutils.http.ResponseInfo;
import com.lidroid.xutils.http.callback.RequestCallBack;
import com.lidroid.xutils.http.client.HttpRequest.HttpMethod;
import cc.clump.notes.utility.JsonHelper;
import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Toast;

public class DemoActivity extends Activity implements OnClickListener {

	private HttpUtils httpUtils = new HttpUtils();// 请求网络,引入xUtils-2.6.14.jar
	
	private Handler handler = new Handler() {
		public void handleMessage(Message msg) {
			switch (msg.what) {
			case 0:// 操作1
				Log.i("do something", "返回结果:" + msg.obj.toString());
				break;
			case 1:// 操作2
				// do something
				break;
			case 2:// 操作3
				// do something
				break;
			case 3:// 操作4
				// do something
				break;
			case 4://联网失败
				Toast.makeText(DemoActivity.this, "联网失败,请检查网络设置", 1).show();
				break;
			default:
				break;
			}
		}
	};

	// 初始化Activity实例对象
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);// 将Activity与View绑定
		
	}
	
	@Override
	protected void onResume() {
		super.onResume();
		
		httpUtilsSendUrl(HttpMethod.GET, "http://blog.clump.cc?n="+System.currentTimeMillis(), 0, 4);
		httpUtilsSendUrl(HttpMethod.GET, "http://blog.clump.cc?n="+System.currentTimeMillis(), 1, 4);
		httpUtilsSendUrl(HttpMethod.GET, "http://blog.clump.cc?n="+System.currentTimeMillis(), 2, 4);
		httpUtilsSendUrl(HttpMethod.GET, "http://blog.clump.cc?n="+System.currentTimeMillis(), 3, 4);
	}

	 
	/**
	 * 执行URL,返回结果
	 * */
	private void httpUtilsSendUrl(HttpMethod method, String url, final int successCode,final int failedCode){
		
		httpUtils
		.send(method,url,new RequestCallBack<String>() {
					@Override
					public void onSuccess(
							ResponseInfo<String> responseInfo) {
						Map resultMap = null;
						try {
							resultMap = JsonHelper
									.toMap(responseInfo.result);

							Message msg = Message.obtain();
							msg.what = successCode;
							msg.obj = resultMap.get("Data").toString();
							handler.sendMessage(msg);

						} catch (JSONException e) {
							e.printStackTrace();
						}
					}

					@Override
					public void onFailure(HttpException error,
							String msg) {
						Message mssg = Message.obtain();
						mssg.what = failedCode;
						mssg.obj = mssg;
						handler.sendMessage(mssg);
					}
				});
	}

	@Override
	public void onClick(View v) {
	}

}

网友评论

无吐槽,不精彩,期待您的参与。

吐槽几句

"(必填)"

"(选填)"

"(必填,不公开)"

(必填,最多100个字符。)

先说这么多吧