Android实现网页图片浏览功能

本文实例为大家分享了AndAndroid实现网页图片浏览的具体代码,供大家参考,具体内容如下

基本功能:输入图片的url然后点击按钮加载出来图片

activity_main.xml

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  xmlns:tools="http://schemas.android.com/tools"  android:id="@+id/activity_main"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:orientation="vertical"  tools:context="cn.edu.bzu.imageview.MainActivity">  <ImageView   android:layout_width="fill_parent"   android:layout_height="fill_parent"   android:id="@+id/iv"   android:layout_weight="1000"   />  <EditText   android:id="@+id/et_path"   android:layout_width="fill_parent"   android:layout_height="wrap_content"   android:hint="请输入图片的路径"   android:text="http://pic.58pic.com/58pic/16/62/63/97m58PICyWM_1024.jpg"   android:singleLine="true" />  <Button   android:text="浏览"   android:layout_width="match_parent"   android:layout_height="wrap_content"   android:onClick="click"/> </LinearLayout> 

MainActivity:

package cn.edu.bzu.imageview; import android.app.Activity; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.text.TextUtils; import android.view.View; import android.widget.EditText; import android.widget.ImageView; import android.widget.Toast; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; public class MainActivity extends Activity {  protected static final int CHANGE_UI = 1;  protected static final int ERROR = 2;  private EditText et_path;  private ImageView iv;  private Handler handler = new Handler() {   public void handleMessage(Message msg) {    if (msg.what == CHANGE_UI) {     Bitmap bitmap = (Bitmap) msg.obj;     iv.setImageBitmap(bitmap);    } else if (msg.what == ERROR) {     Toast.makeText(MainActivity.this, "显示图片错误",Toast.LENGTH_SHORT).show();    }   }   ;  };  @Override  protected void onCreate(Bundle savedInstanceState) {   super.onCreate(savedInstanceState);   setContentView(R.layout.activity_main);   et_path = (EditText) findViewById(R.id.et_path);   iv = (ImageView) findViewById(R.id.iv);  }  public void click(View view) {   final String path = et_path.getText().toString().trim();   if (TextUtils.isEmpty(path)) {    Toast.makeText(this, "图片路径不能为空", Toast.LENGTH_SHORT).show();   } else { //子线程请求网络,android4.0以后访问网络不能放在主线程中    new Thread() {     private HttpURLConnection conn;     private Bitmap bitmap;     public void run() {//连接服务器get请求,获取图片      //创建URL对象      try {       URL url = new URL(path);       conn = (HttpURLConnection) url.openConnection();//根据url发送http的请求       conn.setRequestMethod("GET");//设置请求的方式       conn.setConnectTimeout(5000);//设置超时时间       conn.setRequestProperty("User-Agent", "Mozilla/4.0(compatible;MSIE 6.0;Windows NT 5.1;" + "SV1;.NET4.0C;.NET4.0E;.NET CLR 2.0.50727;" + ".NET CLR 3.0.4506.2152;.NET CLR 3.5.30729;Shuame)");//设置浏览器的版本       int code = conn.getResponseCode();//得到服务器返回的响应码       if (code == 200) {//请求成功后返回码是200        InputStream is = conn.getInputStream();        bitmap = BitmapFactory.decodeStream(is);        Message msg = new Message();        msg.what = CHANGE_UI;        msg.obj = bitmap;        handler.sendMessage(msg);       } else {        Message msg = new Message();        msg.what = ERROR;        handler.sendMessage(msg);       }      } catch (java.io.IOException e) {       e.printStackTrace();       Message msg = new Message();       msg.what = ERROR;       handler.sendMessage(msg);      }     }    }.start();   }  } 

这样基本功能就能实现了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

带上心灵去旅行,以平和的心态看待一切,

Android实现网页图片浏览功能

相关文章:

你感兴趣的文章:

标签云: