액티비티 A & B 액티비티 AI 관리 된 프래그먼트 백 스택이 있습니다. 아래의 경우와 같습니다. 액티비티에는 조각 1에서 2에서 3에서 4까지 4 개의 프래그먼트가 있습니다. 다음 네 번째 조각에서 나는 지금 내가 원하는 것은 활동의 B 버튼 4의 프레스에서 B는 활동 B로 갈 것이고, 다시 열어야한다.이전 액티비티의 조각 백 스택 유지하기
내가 다시 눌러에 스택을
private void changeFragment(Fragment fragment) {
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);
fragmentManager.beginTransaction().replace(R.id.act_home_fl_container, fragment).commit();
}
을 조각을 교체하고 다시 관리하기 위해 다음과 같은 기능을 사용하고
boolean isPopFragment = getSupportFragmentManager().getBackStackEntryCount() > 0 ? true : false;
if (isPopFragment) {
getSupportFragmentManager().popBackStack();
}
내가에서 활동 B에 가고있을 때 내가 여기 개까지 성공을 가지고 있지만, 네 번째 단편을 다시 가져 와서 활동 A로 돌아 오면 활동 A의 단편 스택을 다시 관리 할 수 없습니다.
시작하는 방법이 없습니다.
두 가지 활동에 대해 두 개의 스택을 유지 관리해야합니다. 동일한 작업으로 조각을 관리 할 수는 있지만 나는이 github 프로젝트를 보길 권한다. [https://github.com/JetradarMobile/multibackstack].이 사람들은 아주 잘 구현했습니다. – Wizard