Tôi muốn để có thể đảo ngược một replace
FragmentTransaction
bằng cách sử dụng addToBackStack()
:Nhấp lại nút sau khi giao dịch Fragment sử dụng addToBackStack không có gì
FragmentTransaction fragmentTransaction = getActivity().getSupportFragmentManager().beginTransaction();
Fragment scheduleFragment = new ScheduleFragment();
fragmentTransaction.replace(R.id.content_container, scheduleFragment, "scheduleFragment");
fragmentTransaction.addToBackStack("scheduleFragment");
fragmentTransaction.commit();
nhưng sau đó, nhấp vào nút quay lại không có gì.
Từ tài liệu và nó được cho là để đảo ngược giao dịch.
Tôi đang thiếu gì?
[doc] (http://developer.android.com/training/implementing-navigation/temporal.html) (xem "Thực hiện điều hướng quay lại cho phân đoạn") nói để sử dụng '.add' thay vì' .replace '. Kiểm tra câu trả lời ở đây: http://stackoverflow.com/questions/18634207/difference-between-add-replace-and-addtobackstack nhưng tôi đoán '.replace' không được hỗ trợ đầy đủ trong khi' .add' dường như hoạt động đúng. – electrocrat
Câu trả lời của @Abel Paz dưới đây là bản sửa lỗi đúng cho vấn đề với '.replace' – electrocrat