仍然需要使用 ActionBarSherlock 吗?
Posted
技术标签:
【中文标题】仍然需要使用 ActionBarSherlock 吗?【英文标题】:Is using ActionBarSherlock still necessary? 【发布时间】:2012-04-15 02:10:13 【问题描述】:直到今天早些时候,我的印象是,如果我想在低于 SDK 版本 11 的设备上使用 ActionBar,我需要使用 ABS。但是,在这里查看了一些关于 SO 的问题后,我想到了这个:http://developer.android.com/resources/samples/ActionBarCompat/index.html
这个系统看起来像是在 preHoneycomb 设备上提供了一个功能齐全的操作栏系统。具体来说,虽然我在这些类中没有看到任何关于操作栏选项卡的内容。有没有人设法将这个 actionbarhelper 类与 actionbartabs 一起使用?
有人有使用这两种系统的经验吗?我正在尝试导入我的 android 项目以与 ABS 一起使用,无论是让我的 R 文件链接、将清单带入文件夹、获取正确的包名称以便我的活动能够启动,等等所有这一切,高度混乱的 src 文件夹。因此,如果可以改用这个 Google 提供的代码,我认为它可能是可取的 - 如果可以使用标签?
【问题讨论】:
如果您知道自己在做什么,那么集成 ABS 就很简单。 ActionBarCompat 实用程序很有用,但它不能处理与 ABS 一样多的功能。它处理非常基本的 ActionBar。 我从来没有说过我知道我在做什么。这是我在 Android 上的第一个应用程序,我可以说我有一个功能齐全的 ViewPager、TabAdapter、片段选项卡系统以及一些来自 SQL 服务器的基本登录/注册功能,这简直就是一个野兽。我将从您的评论中删除我应该强制通过让 ABS 发挥作用而不是尝试设置 ActionBarCompat 的想法。 【参考方案1】:这个系统看起来像是在 preHoneycomb 设备上提供了一个功能齐全的操作栏系统。
与原生操作栏或 ActionBarSherlock 相比,ActionBarCompat
不是“功能齐全”。
有没有人设法将这个 actionbarhelper 类与 actionbartabs 一起使用?
它不支持标签。
我正在尝试导入我的 android 项目以与 ABS 一起工作,无论是让我的 R 文件链接、将清单带入文件夹、获取正确的包名称以便启动我的活动,除此之外,还有杂乱无章的 src 文件夹。
第 1 步:下载 ABS ZIP 文件。
第 2 步:将项目(library/
)导入 Eclipse,将其标记为使用 Android 4.0 或更高版本进行编译。
第 3 步:将其作为库项目添加到您现有的项目中。
第 4 步:从 SherlockActivity
或相关类(例如 SherlockListActivity
)继承,并根据需要将其他引用(例如 MenuInflater
)更新为 Sherlock 等效项。
第 5 步:将 Theme.Sherlock
添加到您的 <application>
或 <activity>
元素中。
仅此而已,超出了您通常使用本机操作栏所做的工作。
因此,如果可以改用这个 Google 提供的代码,我认为它可能是可取的
Android 开发者网站的“示例”区域中的代码就是:示例代码。该代码不受支持、未维护(有些甚至不再工作)等。如果您更愿意在有更多工程师使用它、拥有自己的支持组等的组件上使用此类代码,那么您就是欢迎这样做。
这是我在 Android 上的第一个应用程序,我可以说我拥有一个功能齐全的 ViewPager、TabAdapter、片段选项卡系统以及一些来自 SQL 服务器的基本登录/注册功能,这简直就是一个野兽。
那么也许你应该从一个更简单的应用程序开始。您所描述的不是我建议某人开始的内容,除非他们获得具体指导(例如,一组教程)。
【讨论】:
谢谢CommonsWare。我已经开始在运行 ABS 的情况下加载我的应用程序,但还没有达到它实际上可以在 Gingerbread 或更低版本中运行的地步。因此,成为痛苦的意义比失败更令人抱怨。我仍然对添加到应用程序中的批量感到不满意,但如果有必要提供兼容,我会这样做。除此之外?正如我所说,我已经设法让 ViewPager/TabAdapter/Fragments 全部正常运行。我可以在我的网站上通过 SQL/php 注册和登录。剩下的就是多一点 SQL,应用程序就完成了——只要我也能兼容工作。 我还应该注意,我已经阅读了两本 Android 书籍,一本是应用驱动的,另一本是参考书。目前正在阅读一本 PHP/SQL 书籍。虽然一路坎坷,但收获颇丰。 SQL 在错误方面运行起来非常痛苦,但是看到这个应用程序的隧道尽头的光如何,我希望尽快启动并运行向后兼容性:) @Davek804:抱歉,我误解了您的“这是一头野兽”,暗示您仍在研究这些功能。 没什么大不了的。对于您在过去几周内通过多个线程向我提供的大量帮助,我会让它滑落。不过,如果我在运行 ABS 时遇到任何问题,我可能会再次在这里回复。 @dannyroa:要使用 ActionBarSherlock,您需要将构建目标设置为 API 级别 14 或更高。这不会影响您的android:minSdkVersion
- 您仍然可以支持返回到 API 级别 7 的应用程序。以上是关于仍然需要使用 ActionBarSherlock 吗?的主要内容,如果未能解决你的问题,请参考以下文章
ActionBarSherlock:java.lang.NoClassDefFoundError:com.actionbarsherlock.R$styleable
使用 Android Studio 安装 ActionbarSherlock?