1 package com.davemorrissey.labs.subscaleview.test.viewpager; 2 3 import android.os.Bundle; 4 import android.support.annotation.NonNull; 5 import android.support.v4.app.Fragment; 6 import android.view.LayoutInflater; 7 import android.view.View; 8 import android.view.ViewGroup; 9 10 import com.davemorrissey.labs.subscaleview.ImageSource; 11 import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView; 12 import com.davemorrissey.labs.subscaleview.test.R.id; 13 import com.davemorrissey.labs.subscaleview.test.R.layout; 14 15 public class ViewPagerFragment extends Fragment { 16 17 private static final String BUNDLE_ASSET = "asset"; 18 19 private String asset; 20 21 public ViewPagerFragment() { 22 } 23 24 public void setAsset(String asset) { 25 this.asset = asset; 26 } 27 28 @Override 29 public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 30 View rootView = inflater.inflate(layout.view_pager_page, container, false); 31 32 if (savedInstanceState != null) { 33 if (asset == null && savedInstanceState.containsKey(BUNDLE_ASSET)) { 34 asset = savedInstanceState.getString(BUNDLE_ASSET); 35 } 36 } 37 if (asset != null) { 38 SubsamplingScaleImageView imageView = rootView.findViewById(id.imageView); 39 imageView.setImage(ImageSource.asset(asset)); 40 } 41 42 return rootView; 43 } 44 45 @Override 46 public void onSaveInstanceState(@NonNull Bundle outState) { 47 super.onSaveInstanceState(outState); 48 View rootView = getView(); 49 if (rootView != null) { 50 outState.putString(BUNDLE_ASSET, asset); 51 } 52 } 53 54 } 55