Я пытаюсь понять плохое поведение фрагментов: вызываются методы onCreateView
и onActivityCreated
, даже если фрагмент не «виден» в макете.
Если вы используете код:
TestFragment testFragment = new TestFragment();
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.add(R.id.fragmentDetail, testFragment, "test");
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
ft.commit();
заменив FrameLayout на id fragDetail на фрагмент, а затем поверните устройство, метод фрагментов по-прежнему вызывается, даже если контейнер больше не присутствует в макете портрета.Этого не происходит, если вы используете «статический» тег <fragment>
.Если вы используете статический фрагмент, методы фрагментов вызываются именно тогда, когда фрагмент появляется.Можно ли добиться того же поведения без использования фрагмента тега?Мне нужен способ избежать рендеринга фрагмента, если его нет в макете.
Спасибо