gpt4 book ai didi

android - Android Loader 中 onCanceled() 的用途是什么

转载 作者:行者123 更新时间:2023-11-29 02:41:05 24 4
gpt4 key购买 nike

我实现了一个Loader,在onStopLoader() 中,我调用了cancelLoad() 方法。然而,尽管有上述调用,onCanceled() 没有被调用。这个回调的目的是什么?

在我的 Activity 中按下主页按钮时,我可以看到调用了 Activity 的 onStop() 并且还调用了 Loader 的 onStopLoading()。

@Override
public void onStopLoading() {
super.onStopLoading();
cancelLoad();
Log.e(LOG_TAG, "onStopLoading()");
}

@Override
public void onCanceled(List<Earthquake> earthquakes) {
super.onCanceled(earthquakes);
Log.e(LOG_TAG, "onCancelled()");
}

最佳答案

cancelLoad(): Attempt to cancel the current load task. Must be called on the main thread of the process.

因为 onStopLoading() 已经被调用,没有什么可以取消了,因此回调 onCanceled() 永远不会被调用。

看看文档对 cancelLoad() 的返回值的看法

Returns false if the task could not be canceled, typically because it has already completed normally [...]

因此,在您的情况下,它应该返回 false,因为它已经停止。

关于android - Android Loader 中 onCanceled() 的用途是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44094643/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com