public abstract class BaseAsyncLoader<D>
extends <any>
该类和BaseTaskLoader都是实现的顶层类,BaseTaskLoader需要用户提供一个耗时的实现,而该类可以让用户提供一个异步的实现,如使用Android Volley框架
| 限定符和类型 | 类和说明 |
|---|---|
class |
BaseAsyncLoader.AsyncCallback |
| 限定符和类型 | 字段和说明 |
|---|---|
boolean |
isUserVisibleHint |
| 构造器和说明 |
|---|
BaseAsyncLoader(android.content.Context context) |
BaseAsyncLoader(android.content.Context context,
boolean canCancelOnStop) |
| 限定符和类型 | 方法和说明 |
|---|---|
boolean |
canCancelOnStop() |
protected abstract void |
cancelAsync()
取消异步加载的实现逻辑
|
boolean |
cancelLoad() |
protected void |
deliverLoadedData(LoaderResult<D> data) |
protected void |
deliverLoadedError(LoaderResult<D> data) |
void |
deliverResult(LoaderResult<D> data) |
void |
doNotCallOutside() |
void |
forceLoad() |
void |
forceRefresh() |
boolean |
isLoading() |
boolean |
isRefreshing() |
protected abstract void |
loadAsync(boolean isRefresh,
BaseAsyncLoader.AsyncCallback callback)
异步加载完成后一定要回掉AsyncCallback的相关方法告诉Loader结果
回调方法需要在主线程调用
|
protected abstract void |
onReleaseData(D data)
释放资源的方法,该方法不一定需要具体实现,除非资源是一些android.database.Cursor之类的内容
|
protected void |
onReset() |
protected void |
onStartLoading() |
protected void |
onStopLoading() |
protected void |
registerContentObserver(D data,
ForceLoadContentObserver observer)
注册Observer可能会使LoaderManager.LoaderCallbacks的实现复杂化或出现逻辑问题,故该方法不强制子类实现>
|
public BaseAsyncLoader(android.content.Context context)
public BaseAsyncLoader(android.content.Context context,
boolean canCancelOnStop)
public void forceLoad()
public void forceRefresh()
public boolean cancelLoad()
public boolean isRefreshing()
public boolean isLoading()
public boolean canCancelOnStop()
public final void deliverResult(LoaderResult<D> data)
protected void deliverLoadedData(LoaderResult<D> data)
protected void deliverLoadedError(LoaderResult<D> data)
protected void onStartLoading()
protected void onStopLoading()
public void doNotCallOutside()
protected void onReset()
protected void registerContentObserver(D data, ForceLoadContentObserver observer)
注册Observer可能会使LoaderManager.LoaderCallbacks的实现复杂化或出现逻辑问题,故该方法不强制子类实现>
data - observer - protected abstract void loadAsync(boolean isRefresh,
BaseAsyncLoader.AsyncCallback callback)
异步加载完成后一定要回掉AsyncCallback的相关方法告诉Loader结果
回调方法需要在主线程调用
isRefresh - callback - protected abstract void cancelAsync()
取消异步加载的实现逻辑
protected abstract void onReleaseData(D data)
释放资源的方法,该方法不一定需要具体实现,除非资源是一些android.database.Cursor之类的内容
data -