【问题标题】:Will the new ActionBar API be included in the Fragment backport?新的 ActionBar API 是否会包含在 Fragment backport 中?
【发布时间】:2011-11-30 19:30:03
【问题描述】:

昨天的博文提到我们在回到 1.6 的过程中获得了健康剂量的 Fragments,我想知道,ActionBar API 是否会包含在这个向后移植中?

至少从 API 文档来看,它们似乎有些联系在一起。但是,我可以看到 Fragments 与 ActionBar 是分开的,但反之亦然。

有人有消息吗?

谢谢——塞利格

【问题讨论】:

  • 我当然希望如此,但如果他们不这样做,这个问题提供了一些关于如何在 2.X 中实现 ActionBar 的可靠示例:stackoverflow.com/questions/2900509/…
  • 另外,通过适当地设置targetSdkVersion,可以在3.0 中运行时使用ActionBar,同时保持向后兼容。操作栏样式和主题可以完全在 XML 中完成,ActionBar 类方法可以通过反射调用。
  • 我编写了 Android 兼容性库的扩展,其中包括通过单个 API 和单个主题支持操作栏。它支持 Android 1.6 到当前最新的 3.1。你可以在actionbarsherlock.com找到更多信息。

标签: android android-3.0-honeycomb


【解决方案1】:

https://github.com/JakeWharton/ActionBarSherlock 上的 ActionBarSherlock 是一个 Android 库,用于使用 3.0+ 上的本机 ActionBar 和 3.0 之前的第三方库来实现操作栏设计模式。

它在 3.0 之前的设备上使用其他 ActionBar 实现之一:

GreenDroid https://github.com/cyrilmottier/GreenDroid

https://github.com/johannilsson/android-actionbar的android-actionbar

【讨论】:

    【解决方案2】:

    不,它不会包含在片段库中。 ActionBar 根本不绑定到片段。

    【讨论】:

    • 啊,真可惜。你们有机会支持它,因为它有一个相当不错的 API,比我目前看到的 ActionBar 库更好。
    • 它更具挑战性,因为它与框架的联系更紧密——我认为实现它需要对其当前的 API 进行相当彻底的改变。 (例如,框架的菜单 API 被扩展为支持操作栏。)所以在这种情况下,我认为创建一个新的实现可能更有意义,仿照 Honeycomb 中的实现。这与 Fragment 和 Loader API 非常不同,后者实际上只需几天时间就可以将整个 HC 实现复制到适用于旧平台的库中。
    • 啊,让我相信它们绑定在一起的是 ActionBar 状态的文档,即选项卡用于在片段之间切换。谢谢回复。 :)
    【解决方案3】:

    不,不会,但这里有官方的 Android 示例,可以帮助您实现ActionBar from 1.6 to 4.x

    【讨论】:

    • 哪个样本?我查看了 v4 和 v11 的示例,没有看到。
    • @trgraglia,/samples/android-16/ActionBarCompat
    猜你喜欢
    • 2020-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-22
    • 1970-01-01
    • 2017-04-07
    • 2020-04-01
    • 1970-01-01
    相关资源
    最近更新 更多