毕加索占位符图像动画

Picasso placeholder image animation

我正在尝试使用 picassoimage 加载到 ImageView 中。代码如下:

Picasso.with(this)
       .load(imageURL)
       .placeholder(drawable1)
       .error(drawable1)
       .into(imageview)

现在,当 picasso 正在等待下载完成时,imageview 变为空白。为了防止这种情况,我想将当前图像淡出到可绘制对象中,然后加载 URL 中存在的图像。有什么办法吗?

我想 Picass 已经为你做到了,图片加载时使用 placehoder drawable,图片加载失败时显示 error drawable。

如果你真的想做一些事情,你可以使用 Target 如下:

new Target() {
  @Override public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
    imageView2.setImageBitmap(bitmap);
   }

   @Override public void onBitmapFailed(Drawable errorDrawable) {

   }

   @Override public void onPrepareLoad(Drawable placeHolderDrawable) {

   }
}

您可以像这样在 XML 中定义淡出动画:

<?xml version="1.0" encoding="UTF-8"?>
       <set xmlns:android="http://schemas.android.com/apk/res/android">
         <alpha android:fromAlpha="1.0" android:toAlpha="0.0" 
          android:interpolator="@android:anim/accelerate_interpolator" 
          android:duration="2000"/>
     </set>

然后,您可以使用以下方式加载动画:

Animation fadeInAnimation = AnimationUtils.loadAnimation(this, R.anim.your_fade_in_anim);
    imageView.startAnimation(fadeoutAnim);