java 示例AsyncTaskLoader实现
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 示例AsyncTaskLoader实现相关的知识,希望对你有一定的参考价值。
public class MyAsyncTaskLoader extends AsyncTaskLoader<ResponseObject> {
private String mId;
private ResponseObject mResponse;
/**
* Creates a new {@link MyAsyncTaskLoader}.
*
* @param context The context to use.
* @param id The ID of the item to load.
*/
public MyAsyncTaskLoader(@NonNull Context context, @NonNull String id) {
super(context);
mId = id;
}
@Override
protected void onStartLoading() {
if (mResponse != null) {
deliverResult(mResponse);
}
if (mResponse == null || takeContentChanged()) {
forceLoad();
}
}
@Override
public ResponseObject loadInBackground() {
return new ResponseObject(mId); // load then return data
}
@Override
public void deliverResult(ResponseObject response) {
if (isReset()) {
return;
}
mResponse = response;
if (isStarted()) {
super.deliverResult(mResponse);
}
}
@Override
protected void onReset() {
onStopLoading();
if (mResponse != null) {
mResponse = null;
}
}
}
以上是关于java 示例AsyncTaskLoader实现的主要内容,如果未能解决你的问题,请参考以下文章
AsyncTask Loader Http POST / GET
在片段分离时中止加载 AsyncTaskLoader
如何中断 AsyncTaskLoader 后台线程?
如何中断AsyncTaskLoader后台线程?
在常规(支持)片段中使用 AsyncTaskLoader 更新适配器不更新 ListView
Android ListView 由 AsyncTaskLoader 更新