Tôi cần sử dụng các đoạn lồng nhau cho ứng dụng của mình và vì vậy tôi muốn sử dụng getChildFragmentManager
.getChildFragmentManager nâng cao ngoại lệ NoSuchMethod trên thiết bị 4.0.3 nhưng không phải trên 4.2.2
Tôi có hai thiết bị:
- Một một thực chạy trên 4.0.3
- Một một ảo chạy trên 4.2.2
Nó hoạt động khá tốt trên thứ hai nhưng không trên thiết bị vật lý của tôi kể từ khi cuộc gọi đến phương thức này nâng cao một ngoại lệ NoSuchMethod
.
07-10 19:53:51.722: E/AndroidRuntime(29711): java.lang.NoSuchMethodError: fr.epitech.test_esi.fragments.ReservationCalendarFragment.getChildFragmentManager
Dự án của tôi sử dụng thư viện được tham chiếu vì vậy tôi đã tải thư viện hỗ trợ Android mới nhất (từ trình quản lý SDK) và tôi đã thêm thư viện này vào cả thư viện và dự án chính.
Ngoài ra tôi quyết định thành lập các phiên bản tối thiểu sdk hỗ trợ để 4.0.3 (phiên bản thiết bị thật của tôi đang chạy trên):
<uses-sdk
android:minSdkVersion="15"
android:targetSdkVersion="17" />
Đối với cả hai dự án chính và thư viện.
Nếu có ai đó có ý tưởng về những gì tôi có thể làm sai, hãy cho tôi biết.
Cảm ơn. Việc sử dụng Fragment từ lib thư mục ngược lại là một vấn đề, trừ khi có cách nào đó với TabListener? – nathan
@nathan: 'TabListener' không liên kết với bất kỳ loại phân đoạn nào, không kể đến bản gốc. Bạn * xảy ra * để được cung cấp một 'FragmentTransaction' mà bạn có thể sử dụng, một cho các đoạn API cấp 11 nguyên gốc. Bạn không phải sử dụng 'FragmentTransaction' đó. Bạn được hoan nghênh sử dụng 'FragmentTransaction' của riêng bạn từ backport, hoặc làm một cái gì đó khác mà không liên quan đến các mảnh. – CommonsWare
Điều này giải thích. Tôi chỉ thay đổi tất cả các mảnh hỗ trợ thành nguyên nhân, tôi sẽ không hỗ trợ ICS nữa, và có vẻ như tôi vẫn phải sử dụng hỗ trợ <_ < –