Контекст в предпочтении
взято из http://developer.android.com/guide/topics/ui/settings.html:
Примечание. Предпочтение Фрагмент не имеет собственного объекта Контекста. Если вам нужен объект Context, вы можете вызвать getActivity(). Однако, осторожно вызвать getActivity() только тогда, когда фрагмент присоединен к Мероприятия. Когда фрагмент еще не прикреплен или отсоединен в конце своего жизненного цикла getActivity() вернет null.
Если я вызываю getActivity() из метода OnCreate() в PreferenceFragment, могу ли я быть уверен, что фрагмент привязан к его активности - или есть ли другой способ получить Context в этом экземпляре?
Причина, по которой мне нужен контекст, я пытаюсь использовать уведомление Toast из PreferenceFragment
Ответы
Ответ 1
Если вы хотите убедиться, что контекст доступен, вам нужно подождать, пока фрагмент не будет присоединен к Activity. Обратный вызов для этого метода onAttach(Activity)
.
В зависимости от состояния жизненного цикла вашего фрагмента метод getActivity()
также может возвращать значение null.