조각에서 나쁜 동작을 이해하려고합니다. 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();
조각과 아이디 fragmentDetail으로 FrameLayout이 교체를 한 다음 장치를 회전, 조각 방법은 아직 컨테이너가 세로 더 이상 존재하지 않는 경우에도 호출됩니다 형세. '정적'<fragment>
태그를 사용하면 이러한 일이 발생하지 않습니다. 정적 조각을 사용하는 경우 조각이 나타날 때 조각 메서드가 호출됩니다. 프래그먼트 태그를 사용하지 않고 동일한 동작을 수행 할 수 있습니까? 프래그먼트가 레이아웃에없는 경우 렌더링을 피하는 방법이 필요합니다.
감사
이 질문은 유용 할 수도있다. http://stackoverflow.com/questions/6164341/handling-orientation-changes-with-fragments –