Gif 图像未在 android 应用程序中显示其动画
Gif image is not showing its animation in android application
在我的 android 应用程序中,我使用通用图像加载器来显示来自 url 的图像。在加载图像的过程中,我想要显示一个 gif 图像。但是添加的 gif 图像没有显示任何动画。
这是我显示图像的代码。
private static final DisplayImageOptions.Builder DEFAULT_DISPLAY_IMAGE_OPTIONS_BUIDLER = new DisplayImageOptions.Builder()
.imageScaleType(ImageScaleType.IN_SAMPLE_POWER_OF_2)
.displayer(new FadeInBitmapDisplayer(300, true, false, false))
.showImageForEmptyUri(R.drawable.default_image)
.showImageOnLoading(R.drawable.loadingx)
.showImageOnFail(sampleapp.sample.com.sampleapp.R.drawable.default_image).cacheOnDisk(true)
.cacheInMemory(true).bitmapConfig(Config.ARGB_8888);
我应该做哪些更改才能在加载时显示动画 gif 图片
gif图片加载尝试使用glide...
Glide
.with( context )
.load( gifUrl )
.asGif()
.error( R.drawable.full_cake )
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
.into( imageViewGif );
要了解请遵循 link -
here
如果你想使用 ProgressBar 然后创建一个如下所示的方法 -
public void loadImage(Context context, String url, ImageView img, final ProgressBar eProgressBar) {
eProgressBar.setVisibility(View.VISIBLE);
Glide.with(context)
.load(url)
.listener(new RequestListener<String, GlideDrawable>() {
@Override
public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) {
eProgressBar.setVisibility(View.GONE);
return false;
}
@Override
public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
eProgressBar.setVisibility(View.GONE);
return false;
}
})
.crossFade()
.error(R.drawable.placeholder_image)
.into(img);
}
使用此方法并通过它传递您的参数值...:)
Universal Image Loader 不支持 Gif 请参阅 this Try using other libraries like Glide 支持 gif
Glide.with(context)
.load(imageUrl)
.asGif()
.placeholder(R.drawable.yourgif)
.crossFade()
.into(imageView);
我使用 glide 库得到了答案。但是 glide 比通用图像加载器慢。
Glide.with(getActivity().getApplication())
.load(item.imageUrl)
.thumbnail(Glide.with(getActivity().getApplication()).load(R.drawable.loadingx))
.fitCenter()
.crossFade()
.into(holder.image);
在我的 android 应用程序中,我使用通用图像加载器来显示来自 url 的图像。在加载图像的过程中,我想要显示一个 gif 图像。但是添加的 gif 图像没有显示任何动画。 这是我显示图像的代码。
private static final DisplayImageOptions.Builder DEFAULT_DISPLAY_IMAGE_OPTIONS_BUIDLER = new DisplayImageOptions.Builder()
.imageScaleType(ImageScaleType.IN_SAMPLE_POWER_OF_2)
.displayer(new FadeInBitmapDisplayer(300, true, false, false))
.showImageForEmptyUri(R.drawable.default_image)
.showImageOnLoading(R.drawable.loadingx)
.showImageOnFail(sampleapp.sample.com.sampleapp.R.drawable.default_image).cacheOnDisk(true)
.cacheInMemory(true).bitmapConfig(Config.ARGB_8888);
我应该做哪些更改才能在加载时显示动画 gif 图片
gif图片加载尝试使用glide...
Glide
.with( context )
.load( gifUrl )
.asGif()
.error( R.drawable.full_cake )
.diskCacheStrategy(DiskCacheStrategy.SOURCE)
.into( imageViewGif );
要了解请遵循 link - here
如果你想使用 ProgressBar 然后创建一个如下所示的方法 -
public void loadImage(Context context, String url, ImageView img, final ProgressBar eProgressBar) {
eProgressBar.setVisibility(View.VISIBLE);
Glide.with(context)
.load(url)
.listener(new RequestListener<String, GlideDrawable>() {
@Override
public boolean onException(Exception e, String model, Target<GlideDrawable> target, boolean isFirstResource) {
eProgressBar.setVisibility(View.GONE);
return false;
}
@Override
public boolean onResourceReady(GlideDrawable resource, String model, Target<GlideDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
eProgressBar.setVisibility(View.GONE);
return false;
}
})
.crossFade()
.error(R.drawable.placeholder_image)
.into(img);
}
使用此方法并通过它传递您的参数值...:)
Universal Image Loader 不支持 Gif 请参阅 this Try using other libraries like Glide 支持 gif
Glide.with(context)
.load(imageUrl)
.asGif()
.placeholder(R.drawable.yourgif)
.crossFade()
.into(imageView);
我使用 glide 库得到了答案。但是 glide 比通用图像加载器慢。
Glide.with(getActivity().getApplication())
.load(item.imageUrl)
.thumbnail(Glide.with(getActivity().getApplication()).load(R.drawable.loadingx))
.fitCenter()
.crossFade()
.into(holder.image);