blob: 566e144ee0f166cde9fbbee820b370da4b213d31 [file] [log] [blame]
David Morrissey44e24922017-11-20 10:36:41 +00001package com.davemorrissey.labs.subscaleview.test.imagedisplay;
t101d4b482272015-03-04 21:40:32 +08002
David Morrisseyf9537212017-12-11 09:00:33 +00003import android.graphics.Bitmap;
t101d4b482272015-03-04 21:40:32 +08004import android.graphics.Rect;
5import android.os.Bundle;
David Morrissey9a3dc7d2017-12-15 08:34:05 +00006import android.support.annotation.NonNull;
t101d4b482272015-03-04 21:40:32 +08007import android.support.v4.app.Fragment;
8import android.view.LayoutInflater;
9import android.view.View;
t101d4b482272015-03-04 21:40:32 +080010import android.view.ViewGroup;
David Morrissey0df74d72015-03-08 19:59:18 +000011
12import com.davemorrissey.labs.subscaleview.ImageSource;
t101d4b482272015-03-04 21:40:32 +080013import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView;
David Morrisseyf9537212017-12-11 09:00:33 +000014import com.davemorrissey.labs.subscaleview.decoder.CompatDecoderFactory;
15import com.davemorrissey.labs.subscaleview.decoder.ImageDecoder;
16import com.davemorrissey.labs.subscaleview.decoder.ImageRegionDecoder;
17import com.davemorrissey.labs.subscaleview.decoder.SkiaImageDecoder;
18import com.davemorrissey.labs.subscaleview.decoder.SkiaImageRegionDecoder;
David Morrissey44e24922017-11-20 10:36:41 +000019import com.davemorrissey.labs.subscaleview.test.R.id;
20import com.davemorrissey.labs.subscaleview.test.R.layout;
t101d4b482272015-03-04 21:40:32 +080021
t101d4b482272015-03-04 21:40:32 +080022public class ImageDisplayRegionFragment extends Fragment {
23
24 @Override
David Morrissey9a3dc7d2017-12-15 08:34:05 +000025 public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
t101d4b482272015-03-04 21:40:32 +080026 View rootView = inflater.inflate(layout.imagedisplay_region_fragment, container, false);
David Morrisseyc930ef72017-11-02 18:27:22 +000027 final SubsamplingScaleImageView imageView = rootView.findViewById(id.imageView);
David Morrisseyf9537212017-12-11 09:00:33 +000028 imageView.setBitmapDecoderFactory(new CompatDecoderFactory<ImageDecoder>(SkiaImageDecoder.class, Bitmap.Config.ARGB_8888));
29 imageView.setRegionDecoderFactory(new CompatDecoderFactory<ImageRegionDecoder>(SkiaImageRegionDecoder.class, Bitmap.Config.ARGB_8888));
David Morrissey0df74d72015-03-08 19:59:18 +000030 imageView.setOrientation(SubsamplingScaleImageView.ORIENTATION_90);
David Morrisseyf9537212017-12-11 09:00:33 +000031 imageView.setImage(ImageSource.asset("card.png").region(new Rect(5200, 651, 8200, 3250)));
David Morrisseycb946bb2017-12-15 08:47:39 +000032 final ImageDisplayActivity activity = (ImageDisplayActivity)getActivity();
33 if (activity != null) {
34 rootView.findViewById(id.previous).setOnClickListener(new View.OnClickListener() {
35 @Override public void onClick(View v) { activity.previous(); }
36 });
37 }
David Morrisseyc930ef72017-11-02 18:27:22 +000038 rootView.findViewById(id.rotate).setOnClickListener(new View.OnClickListener() {
39 @Override public void onClick(View v) { imageView.setOrientation((imageView.getOrientation() + 90) % 360); }
t101d4b482272015-03-04 21:40:32 +080040 });
t101d4b482272015-03-04 21:40:32 +080041 return rootView;
42 }
43
t101d4b482272015-03-04 21:40:32 +080044}