现在网络上有很多获取图片的开源框架,但是有时,可能一个非常简单的需求,根本不需要导入很大的框架,白白占空间。今天就遇到了,这段时间的项目可以说是相当的。。。,哎,真的适合我这种low水平的人做。废话不多说,今天实现的功能是加载一张图片,基本的网络请求:
点击按钮,获取edittext里面的url,同时将获取到的图片展示到imageview上
/**
* 当我点击 按钮 实际向百度 服务器发送一个 get请求 获取数据
* HttpURLConnection 作用发送或者接收数据
* @param v
*/
public void click(View v){
// 创建一个子线程
new Thread(){
public void run() {
String path = et_path.getText().toString().trim();
try {
//(1) 创建一个url对象 参数就是网址
URL url = new URL(path);
//(2)获取HttpURLConnection 链接对象
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
//(3)设置参数 发送get请求
conn.setRequestMethod("GET"); //默认请求 就是get 要大些
//(4)设置链接网络的超时时间
conn.setConnectTimeout(5000);
//(5)获取服务器返回的状态码
int code = conn.getResponseCode(); //200 代表获取服务器资源全部成功 206请求部分资源
if (code == 200) {
//(6)获取服务器给我们返回的数据
InputStream inputStream = conn.getInputStream(); //返回数据
//(7) imageView 显示图片的数据 位图 ---bitmap
final Bitmap bitmap = BitmapFactory.decodeStream(inputStream);
runOnUiThread( new Runnable() {
public void run() {
//更新ui 也可以通过handler更新ui
iv_img.setImageBitmap(bitmap);
}
});
}
} catch (Exception e) {
e.printStackTrace();
}
};
}.start();
}