У меня есть одно действие и три фрагмента. Когда я перехожу от одного фрагмента к другому, я записываю транзакцию в backStack:
transaction.addToBackStack(null);
Когда я нажимаю стрелку назад на панели действий и перехожу к первому фрагменту, эта стрелка теряется, и это правильно.
switch (item.getItemId()) {
case android.R.id.home:
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
OfficialNameFragment offName = new OfficialNameFragment();
fragmentTransaction.remove(offName);
fragmentTransaction.commit();
getFragmentManager().popBackStack();
((AppCompatActivity)getActivity()).getSupportActionBar() .setDisplayHomeAsUpEnabled(false);
return true;
default:
return super.onOptionsItemSelected(item);
}
Но если я нажму системную кнопку «Назад» и перейду к первому фрагменту, эта стрелка «назад» останется, и это неправильно.