android用ImageView显示网络图片
16lz
2021-01-23
1、权限配置
<</SPAN>uses-permission android:name="android.permission.INTERNET"/>
2、 从网络获取图片
package cn.jgw.service;import java.io.InputStream;import java.net.HttpURLConnection;import java.net.URL;import cn.jgw.utils.StreamTool;public class ImageService { public static byte[] getImage(String path) throws Exception{ URL url = new URL(path); HttpURLConnection conn = (HttpURLConnection) url.openConnection();//基于HTTP协议连接对象 conn.setConnectTimeout(5000); conn.setRequestMethod("GET"); if(conn.getResponseCode() == 200){ InputStream inStream = conn.getInputStream(); return StreamTool.read(inStream); } return null; }}
package cn.jgw.utils;import java.io.ByteArrayOutputStream;import java.io.InputStream;public class StreamTool {public static byte[] read(InputStream inStream) throws Exception{ByteArrayOutputStream outStream = new ByteArrayOutputStream();byte[] buffer = new byte[1024];int len = 0;while( (len = inStream.read(buffer)) != -1){outStream.write(buffer, 0, len);}inStream.close();return outStream.toByteArray();}}
3、在ImageView中显示图片
try{ byte[] data = ImageService.getImage(path); Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length); imageView.setImageBitmap(bitmap);//显示图片 }catch (Exception e) { e.printStackTrace(); Toast.makeText(getApplicationContext(), R.string.error, 1).show();}
更多相关文章
- android通过BitmapFactory.decodeFile获取图片bitmap报内存溢出
- android 运用AsyncTask 获取图片并显示
- android中网络图片的显示
- Android 图片相关
- android 图片点击一下就放大到全屏,再点一下就回到原界面
- Android图片压缩、加水印
- Android获取网页上的图片的代码
- android 使用imageloader 获取图片时,如果需要带cookie
- android 图片叠加效果——两种方法