15

Tôi gặp sự cố khi xem máy nhắn tin nằm bên trong một số đoạn. Để làm việc với máy nhắn tin xem tôi đang sử dụng FragmentPagerAdapter. Và chắc chắn tôi nhận được java.lang.IllegalStateException: Mục nhập đệ quy để executePendingTransactions ngoại lệ khi cố gắng chạy ứng dụng của tôi.ViewPager bên trong vấn đề phân đoạn

Hầu hết mọi người nói rằng không thể có FragmentPagerAdapter bên trong phân đoạn khác, vì vậy tôi xin lỗi nếu câu hỏi này không hợp lệ. Tôi chỉ hy vọng rằng có thể ai đó có một số ý tưởng mới về vấn đề này và giải pháp có thể của nó.

P.S. Tôi đã có một lời khuyên để thiết lập adapter bên trong AsyncTask (tôi có thể làm rõ trường hợp này nếu ai đó cần nó), nhưng giải pháp này có một số lỗi liên quan đến việc khôi phục trạng thái phân mảnh như vậy, vì vậy nó làm việc cho tôi.

+0

Hãy xem một câu trả lời cho câu hỏi này: http://stackoverflow.com/questions/13379194/how-to-add-a-fragment-inside -a-viewpager-using-lồng nhau-fragment-android-4-2 – Adam

Trả lời

27

Bắt đầu với Android 4.2, you can use nested fragments. Thư viện hỗ trợ Android now also includes support for this, vì vậy bạn có thể sử dụng thư viện này với các phiên bản Android cũ hơn.

Các mô hình cơ bản như sau:

Fragment videoFragment = new VideoPlayerFragment(); 
FragmentTransaction transaction = getChildFragmentManager().beginTransaction(); 
transaction.add(R.id.video_fragment, videoFragment).commit();