Android ICS API有没有原生的ViewPager支持库?

40

我在寻找一个适用于我在 ICS API 上开发的 Fragment 的分页控件。

我知道有 ViewPager 以及所有支持早期版本的支持库,但考虑到我使用的是最新版本的 api 并且不打算支持早期版本,所以我不明白为什么我要使用支持库。

难道我必须自己编写 "ViewPager" 吗?还是我没有在 api 中看到相关内容。

1个回答

49

Android ICS API是否有ViewPager的本地支持库等效项?

没有。

我知道ViewPager和之前版本的所有支持库,但我不明白为什么我应该使用支持库,考虑到我使用最新版本的API并且不打算支持早期版本。

Android支持包不仅用于新API的后移。也适用于其他没有被添加到SDK中的类,例如ViewPager及其支持类。

您可以编写自己的视图分页组件实现。精明的程序员会使用Android支持包中的组件,因为它已经编写并且(大部分)经过了调试。

更新:注意,ViewPager可以很好地处理以下页面:

  • API Level 11+原生片段
  • Android Support后移片段
  • 任意视图

对于第一种情况,您需要使用支持JAR的v13版本,其中包含FragmentPagerAdapter和FragmentStatePagerAdapter类的v13版本。


1
@eephyne:删除你有的副本,右键单击项目,选择Android工具>添加支持库,看看是否更好。 - CommonsWare
4
有点不幸的是,与ActionBar选项卡一起使用的ActionBar.TabListener需要app.Fragment,而不支持Fragment。这使得在一个应用程序中同时使用ViewPager和ActionBar选项卡更加复杂。 - Christine
8
如果ViewPager如此重要,为什么他们不将其添加到主SDK中呢?如果您的应用程序不针对Android 4.0及以下版本(例如仅面向平板电脑的应用程序),那么是否有使用支持库的必要? - numan salati
9
ViewPager 可以与 Android 支持包的 fragments,本地 API Level 11 的 fragments 或您自己的 views 配合使用。"在未来的 API 中,他们将为真实的 fragments 包括一个视图分页器" -- 它已经存在了。对于本地 API Level 11 片段,请使用 android-support-v13.jar 来使用 ViewPager,并使用 FragmentPagerAdapterFragmentStatePagerAdapter - CommonsWare
2
@mach:显然你缺少一个有效的 android-support-v13.jar 的副本。只需打开 JAR 文件(毕竟它是一个 ZIP 存档文件),然后你应该会看到 /android/support/v4/view/ViewPager.class - CommonsWare
显示剩余10条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接