com.bumptech.glide.load.resource.bitmap
Class BitmapDrawableResource

java.lang.Object
  extended by com.bumptech.glide.load.resource.drawable.DrawableResource<BitmapDrawable>
      extended by com.bumptech.glide.load.resource.bitmap.BitmapDrawableResource
All Implemented Interfaces:
Resource<BitmapDrawable>

public class BitmapDrawableResource
extends DrawableResource<BitmapDrawable>

A Resource that wraps an BitmapDrawable

This class ensures that every call to DrawableResource.get()} always returns a new BitmapDrawable to avoid rendering issues if used in multiple views and is also responsible for returning the underlying Bitmap to the given BitmapPool when the resource is recycled.


Field Summary
 
Fields inherited from class com.bumptech.glide.load.resource.drawable.DrawableResource
drawable
 
Constructor Summary
BitmapDrawableResource(BitmapDrawable drawable, BitmapPool bitmapPool)
           
 
Method Summary
 int getSize()
          Returns the size in bytes of the wrapped resource to use to determine how much of the memory cache this resource uses.
 void recycle()
          Cleans up and recycles internal resources.
 
Methods inherited from class com.bumptech.glide.load.resource.drawable.DrawableResource
get
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BitmapDrawableResource

public BitmapDrawableResource(BitmapDrawable drawable,
                              BitmapPool bitmapPool)
Method Detail

getSize

public int getSize()
Description copied from interface: Resource
Returns the size in bytes of the wrapped resource to use to determine how much of the memory cache this resource uses.


recycle

public void recycle()
Description copied from interface: Resource
Cleans up and recycles internal resources.

It is only safe to call this method if there are no current resource consumers and if this method has not yet been called. Typically this occurs at one of two times:

For most users of this class, the only time this method should ever be called is during transformations or transcoders, the framework will call this method when all consumers have released this resource and it has been evicted from the cache.