12

Android 支持库 v13 应该为来自 Android 3.1 的更新 API 提供支持。但是,据我所知,不支持子片段。具体来说,getChildFragmentManager() 在哪里?v13 支持库依赖于原生片段,直到 API 级别 17 才添加此方法。我有一个最低 SDK 级别 14 的应用程序,所以我应该能够使用 v13 支持库,但似乎我不能。

我不想一直回到 v4 支持库并承担它的所有重量。v13 库在其他方面是完美的。

4

3 回答 3

8

如果你想在原生 Fragment 中使用嵌套的 Fragment。使用 getFragmentManager()。

如果要在支持库 Fragment 中使用嵌套的 Fragment,请使用 getChildFragmentManager()。

只是偶然发现了这个。有用。:)

于 2014-10-07T15:19:21.557 回答
3

Android 支持库 v13 应该为来自 Android 3.1 的更新 API 提供支持

并不真地。

但是,据我所知,不支持子片段

正确的。您不能从 Java 中的外部库更改现有类。android.app.Fragment已经存在,因此库无法将方法添加到Fragment.

我有一个最低 SDK 级别 14 的应用程序,所以我应该能够使用 v13 支持库,但似乎我不能。

您可以简单地不使用嵌套片段。或者,使用片段反向端口。

我不想一直回到 v4 支持库并承担它的所有重量

android-support-v13.jar大于android-support-v4.jar

如果 v13 包含所有 v4,那么它的目的是什么?

它添加了一些类,例如 和 的原生片段实现FragmentPagerAdapterFragmentStatePagerAdapter这些对于没有原生片段的应用来说是不需要的,因为它们android:minSdkVersion低于 11。

v13 库使用原生片段和活动,不支持片段

android-support-v13.jar包含 SDK 中的所有android.support.v4和所有android.support.v13类。

于 2014-02-18T23:45:26.993 回答
0

您应该只使用 v4 支持库片段。那么您可以使用带有 api 14 的嵌套片段。这样做没有真正的缺点。它们已经包含在 v13 支持库中(它包括所有 v4)

于 2014-10-07T15:23:07.277 回答