6

我需要为我的应用程序使用嵌套片段,所以我想使用getChildFragmentManager.

我有两个设备:

  • 在 4.0.3 上运行的真实版本
  • 在 4.2.2 上运行的虚拟机

它在第二个上运行得很好,但在我的物理设备上却不行,因为调用这个方法会引发NoSuchMethod异常。

07-10 19:53:51.722: E/AndroidRuntime(29711): java.lang.NoSuchMethodError: fr.epitech.test_esi.fragments.ReservationCalendarFragment.getChildFragmentManager

我的项目使用了一个引用库,所以我下载了最新的 android 支持库(从 SDK 管理器),并将它添加到库和主项目中。

Eclipse 中的项目视图

另外我决定将支持的最低 sdk 版本设置为 4.0.3(我的真实设备运行的版本):

<uses-sdk
    android:minSdkVersion="15"
    android:targetSdkVersion="17" />

对于主项目和库。

如果有人知道我会做错什么,请告诉我。

4

2 回答 2

10

getChildFragmentManager()只能通过 Android 支持包的片段后向端口或在 API 级别 17+ 上用于原生片段。因此,如果您尝试在 API 级别 15 或 16 上使用本机片段,并且您也尝试使用getChildFragmentManager(),您将收到此错误。

于 2013-07-10T18:07:16.593 回答
0

尝试改用 android.support.v4.app.Fragment

于 2014-12-02T06:43:02.873 回答