5

Tôi cuối cùng nhìn vào các mảnh vỡ lồng API mới trong support library sửa đổi 11.đoạn lồng nhau với tài liệu tham khảo hoạt động sai sau khi thay đổi cấu hình

Tất cả mọi thứ Nó làm việc khá tốt cho đến khi tôi cố gắng sử dụng các tài liệu tham khảo hoạt động được tổ chức bởi các lồng nhau mảnh vỡ. Sau khi thay đổi cấu hình, childFragment dường như không bị tách rời và được gắn lại với hoạt động mới.

Về cơ bản sau khi định hướng thay đổi của tôi childFragment là trong tình trạng mâu thuẫn từ mà tôi không thể có được dụ hoạt động đúng với getActivity().

Tôi đã mang theo đúng cách bằng cách sử dụng getParentFragment() .getActivity() và nó hoạt động nhưng tôi không nghĩ đó là cách phù hợp để thực hiện.

đây là đoạn code tôi sử dụng để thêm đoạn trong parentFragment lần đầu tiên, sau đó các mảnh được tự động thêm vào trở lại parentFragment:

 public void addChildFragment() { 
      Fragment f = getFragment().getChildFragmentManager().findFragmentByTag(FRAGMENT_CHILD_TAG); 
      if (f == null) { 
       FragmentTransaction ft = getFragment().getChildFragmentManager().beginTransaction(); 

       f = new TrackBrowserFragment(); 
       f.setArguments(getFragment().getArguments()); 

       ft.add(R.id.fragment_album_detail_child_fragment_layout, f , FRAGMENT_CHILD_TAG); 
       ft.commit(); 
      } 
     } 

không phù hợp trong trường hợp hoạt động này rõ ràng dẫn đến nhiều vấn đề với đoạn của tôi (liên kết với các dịch vụ, bộ thu phát sóng và vv). Tôi có thể làm điều gì sai vì tôi không nghĩ rằng đây là hành vi chính xác của một đoạn lồng nhau.

như vậy:

Tôi có làm gì sai với mã không? Đây có phải là hành vi mong đợi của một đoạn lồng nhau không?

Tôi có thiếu gì đó không? Tôi có nên tự tháo rời/đính kèm nó không?

Cảm ơn

+0

Bạn có thể gửi các lỗi mà bạn đang nhìn thấy và còn làm thế nào bạn đang gọi addChildFragment() –

+0

tôi thấy Mà là vấn đề, sử dụng setRetainInstance() trong đoạn mẹ không làm cho đứa trẻ bị deatached. –

+0

Tôi biết bạn không thể giữ lại đoạn lồng nhau, nhưng đừng nhớ nhìn thấy bất cứ điều gì về đoạn gốc. Tôi tự hỏi nếu đây là hành vi dự định. – paul

Trả lời

1

tôi phát hiện ra Mà là vấn đề, tôi đã sử dụng setRetainInstance (true) trong đoạn mẹ và giữ mảnh con được tách ra.

Sau khi tôi gỡ bỏ dòng mọi thứ hoạt động như mong đợi

Các vấn đề liên quan