diff options
author | Sam Judd <judds@google.com> | 2014-02-28 07:45:07 -0800 |
---|---|---|
committer | Sam Judd <judds@google.com> | 2014-03-21 11:13:50 -0700 |
commit | 8c7ae0d1551752a2ff6260dd807580a90020451e (patch) | |
tree | e0d1f1de9cbdb628a17cd08a6e797e365354c8f2 /samples | |
parent | 896af010afa2c88aa6b63fc80c1a412357caed97 (diff) | |
download | glide-8c7ae0d1551752a2ff6260dd807580a90020451e.tar.gz |
Revamp Glide interface to be more flexible.
Conflicts:
library/src/com/bumptech/glide/presenter/target/ImageViewTarget.java
Diffstat (limited to 'samples')
-rw-r--r-- | samples/flickr/src/com/bumptech/glide/samples/flickr/FlickrPhotoGrid.java | 27 | ||||
-rw-r--r-- | samples/flickr/src/com/bumptech/glide/samples/flickr/FlickrPhotoList.java | 17 |
2 files changed, 26 insertions, 18 deletions
diff --git a/samples/flickr/src/com/bumptech/glide/samples/flickr/FlickrPhotoGrid.java b/samples/flickr/src/com/bumptech/glide/samples/flickr/FlickrPhotoGrid.java index ad0aea75..a744f47e 100644 --- a/samples/flickr/src/com/bumptech/glide/samples/flickr/FlickrPhotoGrid.java +++ b/samples/flickr/src/com/bumptech/glide/samples/flickr/FlickrPhotoGrid.java @@ -18,7 +18,7 @@ import com.bumptech.glide.loader.bitmap.model.Cache; import com.bumptech.glide.loader.bitmap.transformation.CenterCrop; import com.bumptech.glide.loader.image.ImageManagerLoader; import com.bumptech.glide.presenter.ImagePresenter; -import com.bumptech.glide.presenter.target.Target; +import com.bumptech.glide.presenter.target.ImageViewTarget; import com.bumptech.glide.resize.load.Downsampler; import com.bumptech.glide.samples.flickr.api.Photo; @@ -72,9 +72,11 @@ public class FlickrPhotoGrid extends SherlockFragment implements PhotoViewer { private class FlickrPreloader extends ListPreloader<Photo> { private final int[] dimens = new int[] { photoSize, photoSize }; + private final Context context; public FlickrPreloader(Context context, int toPreload) { - super(context, toPreload); + super(toPreload); + this.context = context; } @Override @@ -88,8 +90,9 @@ public class FlickrPhotoGrid extends SherlockFragment implements PhotoViewer { } @Override - protected Glide.Request getRequest(Photo item) { - return Glide.using(new FlickrModelLoader(getActivity(), urlCache)) + protected Glide.Request<Photo> getRequest(Photo item) { + return Glide.with(context) + .using(new FlickrModelLoader(getActivity(), urlCache)) .load(item) .centerCrop(); } @@ -126,7 +129,7 @@ public class FlickrPhotoGrid extends SherlockFragment implements PhotoViewer { @Override public View getView(int position, View view, ViewGroup container) { final Photo current = photos.get(position); - final ImagePresenter<Photo> imagePresenter; + final ImagePresenter<Photo, ImageViewTarget> imagePresenter; if (view == null) { ImageView imageView = (ImageView) inflater.inflate(R.layout.flickr_photo_grid_item, container, false); ViewGroup.LayoutParams params = imageView.getLayoutParams(); @@ -135,18 +138,18 @@ public class FlickrPhotoGrid extends SherlockFragment implements PhotoViewer { final Context context = getActivity(); - //this is an example of how one might use ImagePresenter directly, there is otherwise no particular - //reason why ImagePresenter is used here and not in FlickrPhotoList. + // This is an example of how one might use ImagePresenter directly, there is otherwise no particular + // reason why ImagePresenter is used here and not in FlickrPhotoList. final Animation fadeIn = AnimationUtils.loadAnimation(context, R.anim.fade_in); - imagePresenter = new ImagePresenter.Builder<Photo>() + imagePresenter = new ImagePresenter.Builder<Photo, ImageViewTarget>() .setBitmapLoadFactory(new BaseBitmapLoadFactory<Photo, InputStream, Void>( new FlickrModelLoader(context, urlCache), Downsampler.AT_LEAST, new CenterCrop<Photo>())) - .setImageView(imageView) + .setTarget(new ImageViewTarget(imageView), context) .setImageLoader(new ImageManagerLoader(context)) - .setImageReadyCallback(new ImagePresenter.ImageReadyCallback<Photo>() { + .setImageReadyCallback(new ImagePresenter.ImageReadyCallback<Photo, ImageViewTarget>() { @Override - public void onImageReady(Photo photo, Target target, boolean fromCache) { + public void onImageReady(Photo photo, ImageViewTarget target, boolean fromCache) { if (!fromCache) { target.startAnimation(fadeIn); } @@ -156,7 +159,7 @@ public class FlickrPhotoGrid extends SherlockFragment implements PhotoViewer { view = imageView; view.setTag(imagePresenter); } else { - imagePresenter = (ImagePresenter<Photo>) view.getTag(); + imagePresenter = (ImagePresenter<Photo, ImageViewTarget>) view.getTag(); } imagePresenter.setModel(current); diff --git a/samples/flickr/src/com/bumptech/glide/samples/flickr/FlickrPhotoList.java b/samples/flickr/src/com/bumptech/glide/samples/flickr/FlickrPhotoList.java index 54d5670a..b42feffe 100644 --- a/samples/flickr/src/com/bumptech/glide/samples/flickr/FlickrPhotoList.java +++ b/samples/flickr/src/com/bumptech/glide/samples/flickr/FlickrPhotoList.java @@ -13,6 +13,7 @@ import com.actionbarsherlock.app.SherlockFragment; import com.bumptech.glide.Glide; import com.bumptech.glide.ListPreloader; import com.bumptech.glide.loader.bitmap.model.Cache; +import com.bumptech.glide.presenter.target.ImageViewTarget; import com.bumptech.glide.samples.flickr.api.Photo; import java.net.URL; @@ -50,20 +51,22 @@ public class FlickrPhotoList extends SherlockFragment implements PhotoViewer { } private static class ViewHolder { - private final ImageView imageView; private final TextView titleText; + private final ImageViewTarget imageViewTarget; public ViewHolder(ImageView imageView, TextView titleText) { - this.imageView = imageView; this.titleText = titleText; + this.imageViewTarget = new ImageViewTarget(imageView); } } private class FlickrListPreloader extends ListPreloader<Photo> { + private final Context context; private int[] photoDimens = null; public FlickrListPreloader(Context context, int maxPreload) { - super(context, maxPreload); + super(maxPreload); + this.context = context; } public boolean isDimensSet() { @@ -88,7 +91,8 @@ public class FlickrPhotoList extends SherlockFragment implements PhotoViewer { @Override protected Glide.Request getRequest(Photo item) { - return Glide.using(new FlickrModelLoader(getActivity(), urlCache)) + return Glide.with(context) + .using(new FlickrModelLoader(getActivity(), urlCache)) .load(item) .centerCrop(); } @@ -144,11 +148,12 @@ public class FlickrPhotoList extends SherlockFragment implements PhotoViewer { viewHolder = (ViewHolder) view.getTag(); } - Glide.using(new FlickrModelLoader(getActivity(), urlCache)) + Glide.with(getActivity()) + .using(new FlickrModelLoader(getActivity(), urlCache)) .load(current) .centerCrop() .animate(R.anim.fade_in) - .into(viewHolder.imageView); + .into(viewHolder.imageViewTarget); viewHolder.titleText.setText(current.title); return view; |