因为项目使用的Picasso,但Picasso目前又不支持gif的加载,换glide又很麻烦,所以就自己写了一个 :
public static Bitmap loadGifFirstBitmap(String url) {
Bitmap bitmap = null;
try {
HttpURLConnection urlConnection = (HttpURLConnection) new URL(url).openConnection();
InputStream is = urlConnection.getInputStream();
Movie movie = Movie.decodeStream(is);
//Bitmap.Config.ARGB_8888 这里是核心,如果出现图片显示不正确,就换编码试试
bitmap = Bitmap.createBitmap(movie.width(), movie.height(), Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
movie.draw(canvas, 0, 0);
canvas.save();
} catch (IOException e) {
e.printStackTrace();
} finally {
return bitmap;
}
}
网友评论