android 图片url转bitmap
时间: 2023-08-16 15:09:17 浏览: 200
Android读取本地或网络图片并转换为Bitmap
在 Android 中,我们可以使用以下代码将图片 URL 转换为 Bitmap:
```java
public Bitmap getBitmapFromUrl(String url) {
try {
URL imgUrl = new URL(url);
HttpURLConnection conn = (HttpURLConnection) imgUrl.openConnection();
conn.setConnectTimeout(5000);
conn.setReadTimeout(5000);
conn.setDoInput(true);
conn.connect();
InputStream is = conn.getInputStream();
Bitmap bitmap = BitmapFactory.decodeStream(is);
is.close();
return bitmap;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
```
以上代码中,我们首先创建一个 URL 对象,使用 HttpURLConnection 打开连接,并设置连接超时和读取超时时间。然后,我们从连接中获取输入流,并使用 BitmapFactory.decodeStream() 方法将输入流转换为 Bitmap 对象。最后,我们关闭输入流并返回 Bitmap 对象。
需要注意的是,由于网络请求需要在子线程中进行,因此在调用 getBitmapFromUrl() 方法时需要将其放在异步线程中执行,否则会抛出 NetworkOnMainThreadException 异常。
另外,由于从网络中获取图片需要一定的时间,因此建议在获取图片时显示一个进度条或占位图,以提高用户体验。
阅读全文