如何在从url加载的ImageView中淡入图片

2024-03-07

我想对 ImageView 应用淡入动画,以创建从 url 加载的图像在下载完成时淡入的效果。

我知道如何将图像从 url 下载到 ImageView,例如这个答案 https://stackoverflow.com/questions/2471935/how-to-load-an-imageview-by-url-in-android,并且我知道如何将淡入动画应用于 imageView像这儿 https://stackoverflow.com/questions/2597329/how-to-do-a-fadein-of-an-image-on-an-android-activity-screen.

这次尝试

Drawable d = ImageUtils.fetchDrawable("the url");
imageView.setImageDrawable(d);
imageView.startAnimation(fadeInAnimation);

产生闪烁效果(看到、看不到、淡入看到)。颠倒最后两行的顺序也会导致眨眼。

我已经用谷歌搜索并搜索了回调/侦听器形式的解决方案 - 如下所示:

imageView.setOnLoadCompleteListener...

在 ImageView 中注册加载完成事件,但我没有找到任何类似的内容。

如果您能提供有关如何实现此效果的解决方案,我将不胜感激。


可以使用:TransitionDrawable,简单代码如下:

        // Transition drawable with a transparent drwabale and the final bitmap
        final TransitionDrawable td =
                new TransitionDrawable(new Drawable[] {
                        new ColorDrawable(Color.TRANSPARENT),
                        new BitmapDrawable(mResources, bitmap)
                });
        // Set background to loading bitmap
        imageView.setBackgroundDrawable(
                new BitmapDrawable(mResources, mLoadingBitmap));

        imageView.setImageDrawable(td);
        td.startTransition(FADE_IN_TIME);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在从url加载的ImageView中淡入图片 的相关文章

随机推荐