• Top Posts

    How to create and load circular image with Picasso in Android



    public static class CircleTransform implements Transformation {
    @Override
    public Bitmap transform(Bitmap source) {
    int size = Math.min(source.getWidth(), source.getHeight());

    int x = (source.getWidth() - size) / 2;
    int y = (source.getHeight() - size) / 2;

    Bitmap squaredBitmap = Bitmap.createBitmap(source, x, y, size, size);
    if (squaredBitmap != source) {
    source.recycle();
    }

    Bitmap bitmap = Bitmap.createBitmap(size, size, source.getConfig());

    Canvas canvas = new Canvas(bitmap);
    Paint paint = new Paint();
    BitmapShader shader = new BitmapShader(squaredBitmap,
    BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP);
    paint.setShader(shader);
    paint.setAntiAlias(true);

    float r = size / 2f;
    canvas.drawCircle(r, r, r, paint);

    squaredBitmap.recycle();
    return bitmap;
    }

    @Override
    public String key() {
    return "circle";
    }
    }
    // How TO Use
    Picasso.with(context).load(url).transform(new CommonUtil.CircleTransform()).error(R.drawable.logo).into(holder.img_property);


    No comments

    Post Top Ad

    ad728

    Post Bottom Ad

    ad728