Tôi đang gặp phải một vấn đề lạ, trong khi sử dụng Fragments và popping lại chúng.Fragment PopBackStack
tôi có một Fragment Hoạt động:
Bước 1: Tôi gắn một Fragment trong onCreate của Hoạt động rằng trong thời gian bắt đầu được đặt tên Fragment A như:
Đây là onCreate của Fragment Hoạt động
@Override
protected void onCreate(Bundle savedBundleState) {
super.onCreate(savedBundleState);
setContentView(R.layout.activity_base_new);
Fragement_Home home = new Fragement_Home();
FragmentManager manager = getSupportFragmentManager();
manager.beginTransaction().add(R.id.frameContent, home).addToBackStack("home").commit();
}
Bước 2: sau đó I kèm theo thay thế Fragment với đoạn mã sau:
Fragment_More moreFragment = new Fragment_More();
FragmentManager manager = getSupportFragmentManager();
manager.beginTransaction().replace(R.id.frameContent, moreFragment).addToBackStack("more").commit();
Bước 3: Sau đó một lần nữa tôi bổ sung thêm một Fragment trên Fragment_More trong cùng một cách:
Fragment_AboutRockstand termsConditions = new Fragment_AboutRockstand();
getActivity().getSupportFragmentManager().beginTransaction().replace(R.id.frameContent, termsConditions).addToBackStack("about_rockstand").commit();
và đây là Hoạt động onBackPressedButton Lisetener Fragment của tôi:
@Override
public void onBackPressed() {
FragmentManager fm = getSupportFragmentManager();
Fragment f = fm.findFragmentById(R.id.frameContent);
if(fm.getBackStackEntryCount() > 1){
fm.popBackStack();
} else{
finish();
}
}
Đây là vấn đề mà tôi đang nhận được:
Khi tôi nhấn trở lại từ Bước 3, nó cho tôi mảnh vỡ trước đó thành công như được mô tả bởi trên BackPressed, nó sẽ popbackstack và sẽ đưa tôi đến Fragment trước đó. Nhưng từ Fragment_More, khi tôi nhấn lại lần nữa, nó cho tôi thấy nội dung FRAGMENT trống. Nó không bao giờ cho thấy Fragment đầu tiên mà tôi đã thêm vào Bước 1 trong OnCreate of the Activity.
Vui lòng nhận xét. Tôi đang làm gì sai?
Cảm ơn
Bạn có thể cung cấp cho chúng tôi các lớp phân đoạn cho các đoạn bạn sử dụng không? –
Tôi thực sự không thể nhìn thấy bất cứ điều gì sai, trên thực tế tôi đã sao chép những gì bạn mô tả (càng nhiều càng tốt) và nó hoạt động tốt. Tôi đoán có gì đó trong mã bạn không hiển thị .. Tôi lưu ý rằng bạn đang thay đổi một đoạn trong hoạt động từ bên trong một đoạn khác có thể dẫn đến rắc rối (bạn có thể muốn suy nghĩ về cách sử dụng người nghe từ hoạt động của mình). –
kiểm tra http://stackoverflow.com/questions/32132623/onback-pressed-data-not-showing-in-fragments –