diff options
author | Sam Judd <sam@bu.mp> | 2013-07-16 16:41:10 -0700 |
---|---|---|
committer | Sam Judd <sam@bu.mp> | 2013-07-17 18:18:01 -0700 |
commit | d76f655fc29c5b3858d6657f22a5c656c3143767 (patch) | |
tree | 35a5ea5c36868d5974fa3158a692f75c878c8046 /samples | |
parent | 4d2a2db41999cb6f2c79a6b63a93ea6e2adc49b9 (diff) | |
download | glide-d76f655fc29c5b3858d6657f22a5c656c3143767.tar.gz |
Create a simple static interface for Glide
Allows most of the functionality of the library
without having to directly create and manage an
ImageManager and ImagePresenters.
Doesn't currently allow for all functionality and
is somewhat less efficient because it encourages
allocations of unneeded objects, but it is easier
to use and should cover enough cases to be useful.
Diffstat (limited to 'samples')
3 files changed, 15 insertions, 17 deletions
diff --git a/samples/flickr/src/com/bumptech/flickr/FlickrPhotoGrid.java b/samples/flickr/src/com/bumptech/flickr/FlickrPhotoGrid.java index 982d41c7..c83bf4c8 100644 --- a/samples/flickr/src/com/bumptech/flickr/FlickrPhotoGrid.java +++ b/samples/flickr/src/com/bumptech/flickr/FlickrPhotoGrid.java @@ -12,9 +12,9 @@ import android.widget.ImageView; import com.actionbarsherlock.app.SherlockFragment; import com.bumptech.flickr.api.Api; import com.bumptech.flickr.api.Photo; +import com.bumptech.glide.Glide; import com.bumptech.glide.presenter.ImagePresenter; import com.bumptech.glide.presenter.ImageSetCallback; -import com.bumptech.glide.resize.ImageManager; import com.bumptech.glide.resize.loader.CenterCrop; import java.io.File; @@ -32,13 +32,11 @@ public class FlickrPhotoGrid extends SherlockFragment implements PhotoViewer{ private PhotoAdapter adapter; private List<Photo> currentPhotos; private Api api; - private ImageManager imageManager; private File cacheDir; private int photoSize; - public void setup(Api api, ImageManager imageManager, File cacheDir, int photoSize) { + public void setup(Api api, File cacheDir, int photoSize) { this.api = api; - this.imageManager = imageManager; this.cacheDir = cacheDir; this.photoSize = photoSize; } @@ -105,7 +103,7 @@ public class FlickrPhotoGrid extends SherlockFragment implements PhotoViewer{ presenter = new ImagePresenter.Builder<Photo>() .setImageView(imageView) .setModelStreamLoader(new FlickrStreamLoader(api, cacheDir)) - .setImageLoader(new CenterCrop(imageManager)) + .setImageLoader(new CenterCrop(Glide.get().getImageManager(getActivity()))) .setImageSetCallback(new ImageSetCallback() { @Override public void onImageSet(ImageView view, boolean fromCache) { diff --git a/samples/flickr/src/com/bumptech/flickr/FlickrPhotoList.java b/samples/flickr/src/com/bumptech/flickr/FlickrPhotoList.java index caf40053..876ad18d 100644 --- a/samples/flickr/src/com/bumptech/flickr/FlickrPhotoList.java +++ b/samples/flickr/src/com/bumptech/flickr/FlickrPhotoList.java @@ -13,9 +13,9 @@ import android.widget.TextView; import com.actionbarsherlock.app.SherlockFragment; import com.bumptech.flickr.api.Api; import com.bumptech.flickr.api.Photo; +import com.bumptech.glide.Glide; import com.bumptech.glide.presenter.ImagePresenter; import com.bumptech.glide.presenter.ImageSetCallback; -import com.bumptech.glide.resize.ImageManager; import com.bumptech.glide.resize.loader.CenterCrop; import java.util.ArrayList; @@ -31,12 +31,10 @@ import java.util.List; public class FlickrPhotoList extends SherlockFragment implements PhotoViewer { private FlickrPhotoListAdapter adapter; private Api api; - private ImageManager imageManager; private List<Photo> currentPhotos; - public void setup(Api api, ImageManager imageManager) { + public void setup(Api api) { this.api = api; - this.imageManager = imageManager; } @Override @@ -106,7 +104,7 @@ public class FlickrPhotoList extends SherlockFragment implements PhotoViewer { ImagePresenter<Photo> presenter = new ImagePresenter.Builder<Photo>() .setImageView(imageView) .setModelStreamLoader(new DirectFlickrStreamLoader(api)) - .setImageLoader(new CenterCrop(imageManager)) + .setImageLoader(new CenterCrop(Glide.get().getImageManager(getActivity()))) .setImageSetCallback(new ImageSetCallback() { @Override public void onImageSet(ImageView view, boolean fromCache) { diff --git a/samples/flickr/src/com/bumptech/flickr/FlickrSearchActivity.java b/samples/flickr/src/com/bumptech/flickr/FlickrSearchActivity.java index b44459ce..b02c3282 100644 --- a/samples/flickr/src/com/bumptech/flickr/FlickrSearchActivity.java +++ b/samples/flickr/src/com/bumptech/flickr/FlickrSearchActivity.java @@ -17,6 +17,7 @@ import com.actionbarsherlock.app.ActionBar; import com.actionbarsherlock.app.SherlockFragmentActivity; import com.bumptech.flickr.api.Api; import com.bumptech.flickr.api.Photo; +import com.bumptech.glide.Glide; import com.bumptech.glide.resize.ImageManager; import com.bumptech.glide.resize.cache.DiskCache; import com.bumptech.glide.resize.cache.DiskCacheAdapter; @@ -30,7 +31,6 @@ import java.util.List; public class FlickrSearchActivity extends SherlockFragmentActivity { private Api flickerApi; - private ImageManager imageManager; private int searchCount = 0; private List<PhotoViewer> photoViewers = new ArrayList<PhotoViewer>(); @@ -54,9 +54,11 @@ public class FlickrSearchActivity extends SherlockFragmentActivity { diskCache = new DiskCacheAdapter(); } - imageManager = new ImageManager.Builder(this) - .setDiskCache(diskCache) - .build(); + final Glide glide = Glide.get(); + if (!glide.isImageManagerSet()) { + glide.setImageManager(new ImageManager.Builder(this) + .setDiskCache(diskCache)); + } final Resources res = getResources(); flickerApi = new Api(res.getDimensionPixelSize(R.dimen.large_photo_side)); @@ -104,17 +106,17 @@ public class FlickrSearchActivity extends SherlockFragmentActivity { actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); FlickrPhotoGrid small = new FlickrPhotoGrid(); - small.setup(flickerApi, imageManager, cacheDir, res.getDimensionPixelSize(R.dimen.small_photo_side)); + small.setup(flickerApi, cacheDir, res.getDimensionPixelSize(R.dimen.small_photo_side)); fragments.add(small); photoViewers.add(small); final FlickrPhotoGrid medium = new FlickrPhotoGrid(); - medium.setup(flickerApi, imageManager, cacheDir, res.getDimensionPixelSize(R.dimen.medium_photo_side)); + medium.setup(flickerApi, cacheDir, res.getDimensionPixelSize(R.dimen.medium_photo_side)); fragments.add(medium); photoViewers.add(medium); FlickrPhotoList list = new FlickrPhotoList(); - list.setup(flickerApi, imageManager); + list.setup(flickerApi); fragments.add(list); photoViewers.add(list); |