-
- All Implemented Interfaces:
-
com.mobwith.imgmodule.load.engine.Initializable,com.mobwith.imgmodule.load.engine.Resource
public final class LazyBitmapDrawableResource implements Resource<BitmapDrawable>, Initializable
Lazily allocates a BitmapDrawable from a given on the first call to get.
-
-
Method Summary
Modifier and Type Method Description static LazyBitmapDrawableResourceobtain(Context context, Bitmap bitmap)static LazyBitmapDrawableResourceobtain(Resources resources, BitmapPool bitmapPool, Bitmap bitmap)static Resource<BitmapDrawable>obtain(@NonNull() Resources resources, @Nullable() Resource<Bitmap> bitmapResource)Class<BitmapDrawable>getResourceClass()Returns the Class of the wrapped resource. BitmapDrawableget()Returns an instance of the wrapped resource. intgetSize()Returns the size in bytes of the wrapped resource to use to determine how much of the memorycache this resource uses. voidrecycle()Cleans up and recycles internal resources. voidinitialize()Called on a background thread so the Resource can do some eager initialization. -
-
Method Detail
-
obtain
@Deprecated() static LazyBitmapDrawableResource obtain(Context context, Bitmap bitmap)
-
obtain
@Deprecated() static LazyBitmapDrawableResource obtain(Resources resources, BitmapPool bitmapPool, Bitmap bitmap)
-
obtain
@Nullable() static Resource<BitmapDrawable> obtain(@NonNull() Resources resources, @Nullable() Resource<Bitmap> bitmapResource)
-
getResourceClass
@NonNull() Class<BitmapDrawable> getResourceClass()
Returns the Class of the wrapped resource.
-
get
@NonNull() BitmapDrawable get()
Returns an instance of the wrapped resource.
Note - This does not have to be the same instance of the wrapped resource class and in factit is often appropriate to return a new instance for each call. For example, Drawables should only be used by a single View at a time so each call to this method for Resources that wrap Drawables should always return a new Drawable.
-
getSize
int getSize()
Returns the size in bytes of the wrapped resource to use to determine how much of the memorycache this resource uses.
-
recycle
void recycle()
Cleans up and recycles internal resources.
It is only safe to call this method if there are no current resource consumers and if thismethod has not yet been called. Typically this occurs at one of two times:
- During a resource load when the resource is transformed or transcoded before any consumerhave ever had access to this resource
- After all consumers have released this resource and it has been evicted from the cache
-
initialize
void initialize()
Called on a background thread so the Resource can do some eager initialization.
-
-
-
-