毕加索的目标和centerCrop()和适合()

abe*_*rdi 4 android picasso

我的服务器上有一个图像,我想在我的Android客户端上使用Picasso显示它.我想在Picasso上加载图像时添加默认图像,所以我使用Target如下:

Picasso.with(UserActivity.this).load(imageUri.toString()).transform(new RoundedTransformation(500, 1)).into(
new Target() {
    @Override
    public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
        userPic.setImageBitmap(bitmap);
    }

    @Override
    public void onBitmapFailed(Drawable drawable) {
        userPic.setImageBitmap(defaultDrawable);
    }

    @Override
    public void onPrepareLoad(Drawable drawable) {
        userPic.setImageBitmap(defaultDrawable);
    }
});
Run Code Online (Sandbox Code Playgroud)

我想centerCrop()fit()这个图像,但它给了我一个错误,它告诉我,我不能使用它与目标.无论如何在毕加索上使用这些功能?他们为什么不允许这两个功能Target

Kno*_*sos 10

您无需使用Target即可实现目标.

侧面说明,我不能肯定,你实际上可以同时使用fit()centerCrop()在一起.

看这个例子:

Picasso.with(context)
    .load(url) // Equivalent of what ends up in onBitmapLoaded
    .placeholder(R.drawable.user_placeholder) // Equivalent of what ends up in onPrepareLoad
    .error(R.drawable.user_placeholder_error) // Equivalent of what ends up in onBitmapFailed
    .centerCrop()
    .fit()
    .into(imageView);
Run Code Online (Sandbox Code Playgroud)

  • 你可以一起使用`fit()`和`centerCrop()`.没问题 (3认同)