package com.davemorrissey.labs.subscaleview.test.imagedisplay; import android.graphics.Bitmap; import android.graphics.Rect; import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import com.davemorrissey.labs.subscaleview.ImageSource; import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView; import com.davemorrissey.labs.subscaleview.decoder.CompatDecoderFactory; import com.davemorrissey.labs.subscaleview.decoder.ImageDecoder; import com.davemorrissey.labs.subscaleview.decoder.ImageRegionDecoder; import com.davemorrissey.labs.subscaleview.decoder.SkiaImageDecoder; import com.davemorrissey.labs.subscaleview.decoder.SkiaImageRegionDecoder; import com.davemorrissey.labs.subscaleview.test.R.id; import com.davemorrissey.labs.subscaleview.test.R.layout; public class ImageDisplayRegionFragment extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(layout.imagedisplay_region_fragment, container, false); final SubsamplingScaleImageView imageView = rootView.findViewById(id.imageView); imageView.setBitmapDecoderFactory(new CompatDecoderFactory(SkiaImageDecoder.class, Bitmap.Config.ARGB_8888)); imageView.setRegionDecoderFactory(new CompatDecoderFactory(SkiaImageRegionDecoder.class, Bitmap.Config.ARGB_8888)); imageView.setOrientation(SubsamplingScaleImageView.ORIENTATION_90); imageView.setImage(ImageSource.asset("card.png").region(new Rect(5200, 651, 8200, 3250))); rootView.findViewById(id.previous).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ((ImageDisplayActivity) ImageDisplayRegionFragment.this.getActivity()).previous(); } }); rootView.findViewById(id.rotate).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { imageView.setOrientation((imageView.getOrientation() + 90) % 360); } }); return rootView; } }