gpt4 book ai didi

android - 调用 getActivity 时 retrofit 回调中的空指针

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

我正在使用改造从资源中获取数据。但是认为我的架构是错误的。例如,我有一个带有 ListView 的 fragment 。

在 UI 设置后的 onCreateView 中,我调用 API 方法(异步)。这会返回我需要设置 ListView 适配器的模型列表。

这就是我在回调中所做的

 private Callback<List<User>> mUsersCallback = new Callback<List<User>>() {
@Override
public void success(List<User> users, Response response) {
mLoadingLayout.hideLoading();
mPeopleAdapter = new PeopleAdapter(getActivity(), users);
lvPeople.setAdapter(mPeopleAdapter);
}

@Override
public void failure(RetrofitError error) {
mLoadingLayout.hideLoading();
Log.d("get users", error.getUrl() + " " + error.toString());
}
};

在这部分我有时会在调用 getActivity() 时得到 NPE;如何以正确的方式做到这一点?

最佳答案

您的 Activity 在调用期间已被销毁,当您尝试在回调中获取它时,它可能为 null。

简单地检查 Activity 是否不为空,如果为空则忽略回调。

关于android - 调用 getActivity 时 retrofit 回调中的空指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25684364/

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