T - The type of the model being displayed in the list.public class ListPreloader<T> extends Object implements AbsListView.OnScrollListener
AbsListView so that images are in the memory
cache just before the corresponding view in created in the list. Gives the appearance of an infinitely large image
cache, depending on scrolling speed, cpu speed, and cache size.
Must be set using AbsListView.setOnScrollListener(android.widget.AbsListView.OnScrollListener), or have its
corresponding methods called from another AbsListView.OnScrollListener to function.
| Modifier and Type | Class and Description |
|---|---|
static interface |
ListPreloader.PreloadModelProvider<U>
An implementation of PreloadModelProvider should provide all the models that should be preloaded.
|
static interface |
ListPreloader.PreloadSizeProvider<T>
An implementation of PreloadSizeProvider should provide the size of the view in the list where the resources
will be displayed.
|
SCROLL_STATE_FLING, SCROLL_STATE_IDLE, SCROLL_STATE_TOUCH_SCROLL| Constructor and Description |
|---|
ListPreloader(int maxPreload)
Deprecated.
Use
ListPreloader(com.bumptech.glide.ListPreloader.PreloadModelProvider,
com.bumptech.glide.ListPreloader.PreloadSizeProvider, int) instead. This constructor will be removed in Glide
4.0. |
ListPreloader(ListPreloader.PreloadModelProvider<T> preloadModelProvider,
ListPreloader.PreloadSizeProvider<T> preloadDimensionProvider,
int maxPreload)
Constructor for
ListPreloader that accepts interfaces for providing the dimensions of
images to preload, the list of models to preload for a given position, and the request to use to load images. |
| Modifier and Type | Method and Description |
|---|---|
protected int[] |
getDimensions(T item)
Deprecated.
Use
ListPreloader.PreloadSizeProvider instead. This method will be removed
in Glide 4.0. |
protected List<T> |
getItems(int start,
int end)
Deprecated.
Use
ListPreloader.PreloadModelProvider instead. This method will be
removed in Glide 4.0. |
protected GenericRequestBuilder |
getRequestBuilder(T item)
Deprecated.
Use
ListPreloader.PreloadModelProvider instead. This method will be
removed in Glide 4.0. |
void |
onScroll(AbsListView absListView,
int firstVisible,
int visibleCount,
int totalCount) |
void |
onScrollStateChanged(AbsListView absListView,
int scrollState) |
@Deprecated public ListPreloader(int maxPreload)
ListPreloader(com.bumptech.glide.ListPreloader.PreloadModelProvider,
com.bumptech.glide.ListPreloader.PreloadSizeProvider, int) instead. This constructor will be removed in Glide
4.0.ListPreloader that requires users to subclass and override
the getItems(int, int) and getRequestBuilder(Object) methods.maxPreload - Maximum number of items to preload.public ListPreloader(ListPreloader.PreloadModelProvider<T> preloadModelProvider, ListPreloader.PreloadSizeProvider<T> preloadDimensionProvider, int maxPreload)
ListPreloader that accepts interfaces for providing the dimensions of
images to preload, the list of models to preload for a given position, and the request to use to load images.preloadModelProvider - Provides models to load and requests capable of loading them.preloadDimensionProvider - Provides the dimensions of images to load.maxPreload - Maximum number of items to preload.public void onScrollStateChanged(AbsListView absListView, int scrollState)
onScrollStateChanged in interface AbsListView.OnScrollListenerpublic void onScroll(AbsListView absListView, int firstVisible, int visibleCount, int totalCount)
onScroll in interface AbsListView.OnScrollListener@Deprecated protected int[] getDimensions(T item)
ListPreloader.PreloadSizeProvider instead. This method will be removed
in Glide 4.0.Note - The size returned here must precisely match those of the view in the list.
item - A model@Deprecated protected List<T> getItems(int start, int end)
ListPreloader.PreloadModelProvider instead. This method will be
removed in Glide 4.0.start and end.
A list of any size can be returned so there can be multiple models per adapter position.
start - The smallest adapter position. Will be >= 0 && < adapter.getCount() &&
<= endend - The largest adapter position. Will be >= 0 && < adapter.getCount && >=
start@Deprecated protected GenericRequestBuilder getRequestBuilder(T item)
ListPreloader.PreloadModelProvider instead. This method will be
removed in Glide 4.0.GenericRequestBuilder for a given item. Must exactly match the
request used to load the resource in the list.
The target and context will be provided by the preloader.
item - The model to load.