package com.cat.activity;
import com.ta.TASyncHttpClient;
import com.ta.annotation.TAInject;
import com.ta.annotation.TAInjectView;
import com.ta.util.http.AsyncHttpClient;
import com.ta.util.http.AsyncHttpResponseHandler;
import com.ta.util.http.RequestParams;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebView;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
public class ThinkAndroidHttpActivtiy extends ThinkAndroidBaseActivity
{
@TAInjectView(id = R.id.syn_get_button)
Button synGetButton;
@TAInjectView(id = R.id.asyn_get_button)
Button asynGetButton;
@TAInjectView(id = R.id.syn_post_button)
Button synPostButton;
@TAInjectView(id = R.id.asyn_post_button)
Button asynPostButton;
@TAInjectView(id = R.id.show_return)
WebView showWebView;
@TAInjectView(id = R.id.clear_button)
Button clearButton;
@TAInject
private TASyncHttpClient syncHttpClient;
@TAInject
private AsyncHttpClient asyncHttpClient;
private static final String THINKANDROIDURL = "http://www.thinkandroid.cn";
@Override
protected void onAfterOnCreate(Bundle savedInstanceState)
{
// TODO Auto-generated method stub
super.onAfterOnCreate(savedInstanceState);
setTitle(R.string.thinkandroid_http_title);
}
@Override
protected void onAfterSetContentView()
{
// TODO Auto-generated method stub
super.onAfterSetContentView();
OnClickListener onClickListener = new OnClickListener()
{
@Override
public void onClick(View v)
{
// TODO Auto-generated method stub
switch (v.getId())
{
case R.id.syn_get_button:
synGet();
break;
case R.id.asyn_get_button:
asynGet();
break;
case R.id.syn_post_button:
synPost();
break;
case R.id.asyn_post_button:
asynPost();
break;
case R.id.clear_button:
showWebView("");
break;
default:
break;
}
}
};
synGetButton.setOnClickListener(onClickListener);
asynGetButton.setOnClickListener(onClickListener);
synPostButton.setOnClickListener(onClickListener);
asynPostButton.setOnClickListener(onClickListener);
clearButton.setOnClickListener(onClickListener);
}
private void synGet()
{
String content = syncHttpClient.get(THINKANDROIDURL);
showWebView(content);
}
private void asynGet()
{
asyncHttpClient.get(THINKANDROIDURL, new AsyncHttpResponseHandler()
{
@Override
public void onSuccess(String content)
{
// TODO Auto-generated method stub
super.onSuccess(content);
showWebView(content);
}
});
}
private void synPost()
{
RequestParams params = new RequestParams();
params.put("username", "white_cat");
params.put("password", "123456");
params.put("email", "2640017581@qq.com");
// params.put("profile_picture", new File("/mnt/sdcard/testpic.jpg"));
// // 上传文件
// params.put("profile_picture2", inputStream); // 上传数据流
// params.put("profile_picture3", new ByteArrayInputStream(bytes)); //
// 提交字节流
makeToast("本测试参数并未真正的传送,大家根据需要写参数");
String content = syncHttpClient.post("http://www.thinkandroid.cn/");
showWebView(content);
}
private void asynPost()
{
RequestParams params = new RequestParams();
params.put("username", "white_cat");
params.put("password", "123456");
params.put("email", "2640017581@qq.com");
// params.put("profile_picture", new File("/mnt/sdcard/testpic.jpg"));
// // 上传文件
// params.put("profile_picture2", inputStream); // 上传数据流
// params.put("profile_picture3", new ByteArrayInputStream(bytes)); //
// 提交字节流
makeToast("本测试参数并未真正的传送,大家根据需要写参数");
asyncHttpClient.post(THINKANDROIDURL, new AsyncHttpResponseHandler()
{
@Override
public void onSuccess(String content)
{
// TODO Auto-generated method stub
super.onSuccess(content);
showWebView(content);
}
});
}
private void showWebView(String content)
{
showWebView.getSettings().setDefaultTextEncodingName("utf-8");
showWebView.loadDataWithBaseURL(null, content, "text/html", "utf-8",
null);
}
private void makeToast(String content)
{
Toast.makeText(this, content, Toast.LENGTH_LONG).show();
}
}