有一個similar question其中大多數答案建議使用getActivity()
爲了獲得片段的上下文,但如何獲得對活動/上下文的引用(如果片段被分離)(在這種情況下,getActivity()
返回null)?獲取分離片段中的上下文/活動?
我的情況是我的片段啓動了一個AsyncTask,完成後調用片段的onSuccess()
方法。但是我的片段的onSuccess()
方法需要一個上下文來顯示Toast消息或訪問共享首選項。那麼有沒有一種可靠的方法來獲取上下文?
我正在考慮的一種方法是將一個上下文對象傳遞給我的AsyncTask構造函數,並將其傳回給我前面提到的onSuccess()
回調方法 - 但這會導致內存泄漏嗎?
(NB - 這裏有一個答案here,顯示如何檢索當前活動,但同樣,它需要一個有效的上下文)
你試過getApplicationContext()嗎? – 2015-03-02 11:43:33
onattach方法首先被調用,因爲您將獲得活動引用,存儲並使用它。 – Dev 2015-03-02 11:46:09