2013-07-26 33 views
5

Ứng dụng của tôi có ViewPager có bộ điều hợp trả về ba Mảnh. Mỗi Fragment tải một danh sách dữ liệu từ Web trong onCreateView. Vì vậy, hãy gọi những đoạn A, B, C.Khi sử dụng ViewPager với Fragments, các mảnh bị phá hủy khi vuốt

Sau khi hoạt động chứa viewPager mở, Phân đoạn A và B được tải. Nhưng chỉ A hiện có thể nhìn thấy. Vì vậy, nếu tôi vuốt sang phải, thì B hiển thị và C được tải phía sau cảnh. Nếu tôi vuốt sang phải một lần nữa, khi đó C sẽ hiển thị. Vấn đề là, onDestroyView() của đoạn A được gọi và tất cả dữ liệu đã tải của nó đã biến mất! Vì vậy, nếu tôi quay trở lại đoạn A, thì onCreateView() của A được gọi lại và dữ liệu của A được tải lại từ web.

Đây có phải là hành vi mặc định của ViewPager khi sử dụng nó với Phân đoạn không? Có thể keek mảnh sống (bằng cách không gọi onDestroyView()) ngay cả khi nó không nhìn thấy được?

Cảm ơn

Trả lời

10

thử:

yourViewPager.setOffscreenPageLimit(2) 

nơi 2 là số lượng các trang để giữ trong bộ nhớ ở hai bên của trang hiện tại.

+0

sweeeeeeettt !!! – user2062024

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