package com.example.cooler;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.client.ClientProtocolException;import org.apache.http.client.HttpClient;import org.apache.http.client.methods.HttpGet;import org.apache.http.impl.client.DefaultHttpClient;import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.util.Log;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;public class HttpActivity extends Activity {private TextView tv1 = null;private Button btn_http = null;private HttpResponse httpResponse = null;private HttpEntity httpEntity = null;private Handler handler = null;private String content = "";@Overrideprotected void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.active_http);// 创建属于主线程的handlerhandler = new Handler();btn_http = (Button) findViewById(R.id.btn_http);btn_http.setOnClickListener(new HttpListener());}class HttpListener implements OnClickListener {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubtv1 = (TextView) findViewById(R.id.editTextHttp);tv1.setText("start....");// String result = tv1.getText().toString();new Thread() {public void run() {// 生成请求对象HttpGet httpgGet = new HttpGet("http://www.baidu.com");// 生成httpclient对象HttpClient httpClient = new DefaultHttpClient();InputStream inputStream = null;try {httpResponse = httpClient.execute(httpgGet);httpEntity = httpResponse.getEntity();inputStream = httpEntity.getContent();BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));String result = "";String line = "";while ((line = reader.readLine()) != null) {result = result + line;}content = result;handler.post(runnableUi);System.out.println(result);} catch (ClientProtocolException e) {// TODO Auto-generated catch block// e.printStackTrace();Log.v("client ", "11");} catch (IOException e) {// TODO Auto-generated catch block// e.printStackTrace();Log.v("IO ", "22");} finally {try {inputStream.close();} catch (Exception e3) {Log.v("e3  ", "33");// e3.printStackTrace();// TODO: handle exception}}}}.start();}}// 构建Runnable对象,在runnable中更新界面Runnable runnableUi = new Runnable() {@Overridepublic void run() {// 更新界面tv1.setText("the Content is:" + content);}};}


<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:background="#EEE685" >    <LinearLayout        android:id="@+id/linerLayout1"        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:background="#E0FFFF"        android:orientation="vertical" >        <Button            android:id="@+id/btn_http"            android:layout_width="fill_parent"            android:layout_height="wrap_content"            android:text="@string/btn_http" />        <EditText            android:id="@+id/editTextHttp"            android:layout_width="fill_parent"            android:layout_height="wrap_content"            android:ems="10"            android:inputType="textMultiLine" >            <requestFocus />        </EditText>    </LinearLayout></FrameLayout>

更多相关文章

  1. 关于Android/java的复杂对象的深拷贝和浅拷贝
  2. Android 子线程 更新 UI 界面 总结
  3. android 使用Intent传递对象 Serializable 或者 Parcelabel 《第
  4. Android 获取网络状态及调用网络配置界面(转帖)
  5. FregServer进程,发送BC_TRANSACTION,唤醒ServiceManager进程,返回BR
  6. 在非主线程中不能操作主线程中的View
  7. Android瀑布流 & 仿Win8的metro的UI界面
  8. 在Android中创建启动界面 编辑
  9. 【Android 界面效果42】如何自定义字体

随机推荐

  1. Linux远程执行Windows机器任务
  2. 使用kubeadm部署Kubernetes v1.13.3
  3. 用好Git 和 SVN,轻松驾驭版本管理
  4. 痞子衡嵌入式:超级好用的可视化PyQt GUI构
  5. 痞子衡嵌入式:如果i.MX RT是一匹悍马,征服
  6. MySQL分库备份与分表备份
  7. 痞子衡嵌入式:开启NXP-MCUBootUtility工具
  8. 高可用数据库主从复制延时的解决
  9. 痞子衡嵌入式:开启NXP-MCUBootUtility工具
  10. mysql多实例介绍及配置