Zoom ImageView in android like Instagram

Solution 1:

I recommend Zoomy, very simple and functional.

Just add the following to your current ImageView:

Zoomy.Builder builder = new Zoomy.Builder(this).target(mZoomableView);
builder.register();

Solution 2:

I would recommend these two libraries:

  1. PhotoView

  2. ImageViewZoom

For PhotoView, you just have to create an attacher and "attach" it to your ImageView.

Some code

// After getting your imageImage view, attach it like the following
PhotoViewAttacher yourAttacher = new PhotoViewAttacher(yourImageView);

With just this code, you'll be able to zoom in/out/whatever on yourImageView. Check the links above for more details.

EDIT

Instagram has changed a lot since this answer was posted, and the libraries I recommended above might not provide the experience you are looking for.

Solution 3:

thanks

I have added this to my gradle.build

 compile 'it.sephiroth.android.library.imagezoom:imagezoom:2.2.5'

and then using this view

  <it.sephiroth.android.library.imagezoom.ImageViewTouch
    android:id="@+id/mp3Image"
    android:adjustViewBounds="true"
    android:layout_width="346dp"
    android:layout_height="356dp"
    android:scaleType="fitCenter" />

and the below code, the zoom came to my app

   myImage = (ImageViewTouch) findViewById(R.id.mp3Image);
    myImage.setDisplayType(ImageViewTouchBase.DisplayType.FIT_IF_BIGGER);