2014-09-05 22 views
1

我正在使用翻新功能從資源中提取數據。但認爲我的架構是錯誤的。 所以,我有一個listview的片段,例如。調用getActivity時翻新回調中的空指針

在UI設置後的onCreateView我調用API方法(異步)。這返回我需要設置我的列表視圖適配器的模型列表。

,這是我在回調

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()); 
    } 
}; 

不要在這一部分,我有時會NPE時調用getActivity(); 如何正確使用它?

+0

發佈日誌可能有幫助 – 2014-09-05 11:07:14

+0

@KaranMer沒有必要登錄,真的。它只是NPE時調用getActivity() 我想,getActivity在異步方法的回調中是不好的 – onCreate 2014-09-05 11:24:36

回答

1

你的活動已在通話過程中被摧毀,當你設法得到它在你的回調,它可以爲null。

簡單地檢查活動是否爲空,如果null忽略回調。