T - The type of the model the size should be provided for.public class ViewPreloadSizeProvider<T> extends Object implements ListPreloader.PreloadSizeProvider<T>, SizeReadyCallback
ListPreloader.PreloadSizeProvider that will extract the preload size
from a given View.| Constructor and Description |
|---|
ViewPreloadSizeProvider()
Constructor that does nothing by default and requires users to call
setView(android.view.View) when a View is available to registerComponents the dimensions
returned by this class. |
ViewPreloadSizeProvider(View view)
Constructor that will extract the preload size from a given
View. |
| Modifier and Type | Method and Description |
|---|---|
int[] |
getPreloadSize(T item,
int adapterPosition,
int itemPosition)
Returns the size of the view in the list where the resources will be displayed in pixels in
the format [x, y], or
null if no size is currently available. |
void |
onSizeReady(int width,
int height)
A callback called on the main thread.
|
void |
setView(View view)
Sets the
View the size will be extracted. |
public ViewPreloadSizeProvider()
setView(android.view.View) when a View is available to registerComponents the dimensions
returned by this class.public ViewPreloadSizeProvider(View view)
View.view - A not null View the size will be extracted from async using an .OnPreDrawListenerpublic int[] getPreloadSize(T item, int adapterPosition, int itemPosition)
ListPreloader.PreloadSizeProvidernull if no size is currently available.
Note - The dimensions returned here must precisely match those of the view in the list.
If this method returns null, then no request will be started for the given item.
getPreloadSize in interface ListPreloader.PreloadSizeProvider<T>item - A modelpublic void onSizeReady(int width,
int height)
SizeReadyCallbackonSizeReady in interface SizeReadyCallbackwidth - The width in pixels of the target, or Target.SIZE_ORIGINAL to indicate
that we want the resource at its original width.height - The height in pixels of the target, or Target.SIZE_ORIGINAL to indicate
that we want the resource at its original height.public void setView(View view)
View the size will be extracted.
Note - only the first call to this method will be obeyed, subsequent requests will be ignored.
view - A not null View the size will be extracted async with an .OnPreDrawListener