7

我正在使用 android:minSdkVersion="11" 开发应用程序。据我所知,ViewPager 是在 Compatibility Library 中实现的。通过添加 android-support-v4.jar 库,我已成功使其在我的应用程序中工作,但现在我不得不使用

android.support.v4.app.FragmentActivity

因为我需要 FragmentPagerAdapter 的 getSupportFragmentManager(),而不是新的 android.app.Activity 的 getFragmentManager()。

我也需要使用

android.support.v4.app.Fragment

代替

android.app.Fragment

它虽然有效,但我绝对不喜欢这种方法。它破坏了应用程序的设计,我根本不想在我的 API Level 11 项目中使用兼容性库。

在 Honeycomb+ 应用程序中是否有其他更原生的方式来使用 ViewPager?

4

2 回答 2

13

在陈述接受的答案时可能并非如此,但import android.support.v13.app.FragmentStatePagerAdapter;示例代码中有。如果您使用 support-v13 库,则构造函数采用不支持的FragmentManager. 请注意,ViewPager必须仍然来自 v4。

我还要补充一点,v4 表示 Android 版本 4+(Donut 1.6)的支持库,v13 表示 Android 版本 13+(Honeycomb 3.2)的支持库。至少对我来说,这并不是一个显而易见的事实。这意味着 v4/v13 中使用的 API 与该点兼容并且版本回溯到该点。

于 2013-04-17T18:46:51.947 回答
8

复制FragmentPagerAdapter到您的代码中并修改它以使用android.app.Fragment等。或者PagerAdapter自己实现,它根本不依赖于片段。

于 2011-11-08T02:55:08.113 回答