我使用扩展Loader
的类。
我得到结果后如何停止我的装载机?
当我旋转手机时,我再次得到结果:
@Override
public void onLoadFinished(Loader<Data> loader, Data data) {
makeWorkWithData();
//... finish this loader? (or delete result)
}
答案 0 :(得分:5)
使用此:
@Override
public void onLoadFinished(Loader<Data> loader, Data data) {
makeWorkWithData();
stopLoader(id);
}
void stopLoader(int id) {
getLoaderManager().destroyLoader(id);
}
当需要再次提出请求时,请致电getLoaderManager().restartLoader()...
答案 1 :(得分:1)
我对Androids Loaders API不满意,因为轮换将导致Loaders重新开始他们所做的工作。这就是我使用和创建Android可保留任务库的原因。它的重量轻,基于Android AsyncTask API,但具有自动旋转处理功能。您可能想要检查它并使用它而不是装载机。
https://github.com/NeoTech-Software/Android-Retainable-Tasks
免责声明:我是Android可保留任务的作者。