使用 Picasso 从 URL 加载到 ImageView,ImageView 上没有白色闪光
Load from URL to ImageView with Picasso without white flash on ImageView
我正在使用 Square 的 Picasso 库将 URL 字符串加载到 ImageView 中。我在一个数组或 URLs 上多次调用它,使用计时器来更改 ImageView 图像。
尽管第一次,当 Picasso 加载 URL 内容时,每次 ImageView 更新时,它都会闪烁白色。
Picasso缓存内容后,ImageView发生变化,没有flash。
如何阻止 ImageView 闪烁白色?
Picasso.with(getApplicationContext()).load(currentUrl).into(img, new Callback() {
@Override
public void onSuccess() {
mProgress.dismiss();
}
@Override
public void onError() {
mProgress.dismiss();
}
});
有同样的问题,通过添加 noPlaceHolder 指令解决了这个问题:
Picasso.with(getApplicationContext())
.load(currentUrl)
.noPlaceholder()
.into(img, new Callback() {
@Override
public void onSuccess() {
mProgress.dismiss();
}
@Override
public void onError() {
mProgress.dismiss();
}
});
默认情况下,Picasso 将清除目标 ImageView 以确保在视图被回收的情况下的行为。此方法将防止该行为并保留任何已设置的图像。
ImageView iv = findViewById(R.id.iv);
Picass().get()
.load("Image Url")
.noPlaceHolder()
.into(iv);
我正在使用 Square 的 Picasso 库将 URL 字符串加载到 ImageView 中。我在一个数组或 URLs 上多次调用它,使用计时器来更改 ImageView 图像。
尽管第一次,当 Picasso 加载 URL 内容时,每次 ImageView 更新时,它都会闪烁白色。
Picasso缓存内容后,ImageView发生变化,没有flash。
如何阻止 ImageView 闪烁白色?
Picasso.with(getApplicationContext()).load(currentUrl).into(img, new Callback() {
@Override
public void onSuccess() {
mProgress.dismiss();
}
@Override
public void onError() {
mProgress.dismiss();
}
});
有同样的问题,通过添加 noPlaceHolder 指令解决了这个问题:
Picasso.with(getApplicationContext())
.load(currentUrl)
.noPlaceholder()
.into(img, new Callback() {
@Override
public void onSuccess() {
mProgress.dismiss();
}
@Override
public void onError() {
mProgress.dismiss();
}
});
默认情况下,Picasso 将清除目标 ImageView 以确保在视图被回收的情况下的行为。此方法将防止该行为并保留任何已设置的图像。
ImageView iv = findViewById(R.id.iv);
Picass().get()
.load("Image Url")
.noPlaceHolder()
.into(iv);