Я пытаюсь реализовать довольно простой пользовательский интерфейс.
У меня есть действие и внутри него фрагмент, который выполняет HTTP-запрос и обновляет некоторые значения во фрагменте.
Это отлично работает, теперь я хотел бы иметь меню, чтобы обновить это - меню содержится в действии.
У меня проблема в том, что я не уверен, как обрабатывать вызовы методов. В основном я обнаружил, что getActivity() внутри фрагмента возвращает null, когда я обновляю его из обработчика меню.
Итак, у меня есть этот фрагмент кода в Activity
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
try {
handler = new GetData();
} catch (Exception e) {
Log.e("FFF", "Exception: " + Log.getStackTraceString(e));
}
}
GetData() - это мой класс активности java
Теперь в моем событии onOptionsItemSelect, если я использую обработчик сверху (сделав обработчик глобальной переменной), он работает, но getActivity() во фрагменте имеет значение null.
Использование приведенного ниже кода возвращает значение null при вызове в событии onOptionsItemSelected.
GetData handler = (GetData) getFragmentManager().findFragmentById(R.layout.verticalwetherlayout);
Есть ли учебник, объясняющий эту часть? а может я просто что-то не так делаю?
Крис