Tôi quan tâm đến cách tốt nhất để có một hoạt động đơn lẻ chuyển đổi giữa hai đoạn.Cách tốt nhất để chuyển đổi giữa hai đoạn
Tôi đã đọc 15 bài đăng tràn ngăn xếp và 5 bài đăng trên blog về cách thực hiện điều này, và trong khi tôi nghĩ rằng tôi đã trộn lẫn một giải pháp, tôi không tin đó là giải pháp tốt nhất. Vì vậy, tôi muốn nghe ý kiến của mọi người về đúng cách để xử lý điều này, đặc biệt là liên quan đến vòng đời của hoạt động phụ huynh và các mảnh vỡ.
Dưới đây là tình hình một cách chi tiết:
- Một hoạt động cha mẹ có thể hiển thị một trong hai mảnh càng tốt.
- Hai đoạn có trạng thái mà tôi muốn tồn tại trong một phiên, nhưng không nhất thiết phải được duy trì giữa các phiên.
- Một số hoạt động khác, chẳng hạn như hoạt động gốc và các đoạn có thể bị chôn vùi trong ngăn xếp sau và bị phá hủy do bộ nhớ thấp.
- Tôi muốn khả năng sử dụng nút quay lại để di chuyển giữa các đoạn (Vì vậy, khi tôi hiểu nó, tôi không thể sử dụng setRetainInstance).
Ngoài tư vấn kiến trúc chung, tôi đã sau câu hỏi nổi bật:
- Nếu hoạt động cha mẹ bị phá hủy do bộ nhớ thấp, làm thế nào để đảm bảo rằng các tiểu bang của cả hai mảnh sẽ được giữ lại , theo bài đăng này: When a Fragment is replaced and put in the back stack (or removed) does it stay in memory?. Tôi chỉ cần một con trỏ đến từng đoạn trong hoạt động chính?
- Cách tốt nhất để hoạt động của phụ huynh theo dõi phân đoạn nào hiện đang hiển thị?
Cảm ơn bạn trước!
Cảm ơn bạn đã trả lời. Tôi không nghĩ rằng tôi có thể sử dụng một máy nhắn tin xem ở đây, bởi vì các quan điểm không nên được swiped-giữa. Tôi chắc chắn sẽ thực hiện kiện mặc dù. Tôi triển khai onBackPressed ở đâu? – GLee
OnBackPressed là phương thức hoạt động. Vì vậy, bạn sẽ phải ghi đè nó ở đó. –