조각 A 및 B를 호출 할 수 있습니다. 조각 B는 단편 A에있는 단추를 클릭 할 때 조각 A를 대체하는 A에 대한 상세보기입니다.빈 savedInstanceState 조각 교체시 이중 회전 후 조각을 복원 할 때 번들
대체 코드 : 지금 한 번 조각 B의 화면을 회전하고 이전 조각 A는 아무 문제없이 회복됩니다 돌아 가기 누르면
FragmentTransaction transaction = getFragmentManager().beginTransaction();
transaction.replace(R.id.fragment_container, new DetailFragment());
transaction.addToBackStack(null);
transaction.commit();
(가 savedInstanceState 번들로 onActivityCreated에서 그 상태를 복원합니다).
이제 재미있는 부분에 ...
나는 돌아 가기 때문에 내가int[] data = savedInstanceState.getIntArray(STATE_DATA);
onActivityCreated
수익률 널 (null)는 NullPointerException를 얻을 번 이상 조각 B에서 화면을 눌러 회전합니다.
이 동작을 어떻게 해결할 수 있습니까? 유일한 다른 방법은 영구 저장 장치 (환경 설정 또는 DB)를 통해 있었지만 유스 케이스에는 매우 적합하지 않은 것 같습니다.
편집/추가 정보 : 조각 B가 활성화되어있는 동안
조각 A로부터 다음과 같은 방법을 회전 변화에 호출되는 : 번들 자체가 좋아 내가 대답을 발견