毕加索占位符图像动画
Picasso placeholder image animation
我正在尝试使用 picasso
将 image
加载到 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);
我正在尝试使用 picasso
将 image
加载到 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);