用毕加索将图像裁剪为正方形

Crop image as square with picasso

如何在 Android 上使用 picasso 库将图像裁剪成正方形?

我需要以下内容:

我还需要

下面的项目为Picasso提供了很多不同的变换

https://github.com/wasabeef/picasso-transformations

你感兴趣的名字叫CropSquareTransformation,你可以用下面的代码申请

Picasso.with(mContext)
       .load(R.drawable.demo)
       .transform(transformation)
       .transform(new CropSquareTransformation())
       .into(holder.image);

您可以添加依赖项或复制并粘贴您需要的类。

使用自定义图像视图:

public class SquareImageView extends android.support.v7.widget.AppCompatImageView {
    public SquareImageView(Context context) {
        super(context);
    }

    public SquareImageView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public SquareImageView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }

    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
        setMeasuredDimension(getMeasuredWidth(), getMeasuredWidth()); //Snap to width
    }
}

在你的xml中:

 <com.my.package.SquareImageView
  android:layout_width="match_parent"
  android:layout_height="wrap_content">