Событие на фрагмент заменить?

Я видел это, когда я выполняю

FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
MyFragment myFragment = new MyFragment();
fragmentTransaction.replace(R.id.parent, myFragment, "MyFragment");
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();

на старом фрагменте нет метода, вызываемого Я пробовал с:

  • OnStop();
  • OnPause();
  • OnDestroy ();
  • onDetach ();

Никто не называется, почему?

2 ответа

Возможно, в вашем сообщении есть ошибка ввода или большое недоразумение. Сначала нет fragmentManager.replace()возможно вы имели ввиду FragmentTransaction.replace(),

Если это так, попробуйте onDetach() а также onDestroy() снова. Например, убедитесь, что у вас есть атрибут @Override:

@Override
public void onDetach() {
...
}

Если вы собираетесь изменить отмеченный пункт в навигационном ящике, я думаю, что лучше всего использовать onAttachFragment событие в основной деятельности

Другие вопросы по тегам