16

我正在尝试使用 Actionbar Sherlock 4,针对 sdk 15 和 min sdk 8。按照使用网站上提供的说明和此处发布的精彩视频进行操作后:http ://www.youtube.com/watch?v= avcp6eD_X2k

我仍然遇到问题。当我尝试将 android:theme="@style/Theme.Sherlock" 添加到清单文件中时,出现错误:

未找到与给定名称匹配的资源(在“主题”处,值为“@style/Theme.Sherlock”)。

我已将 actionbar Sherlock 库项目包含到我的项目中,并且导入语句在那里并且没有出现任何错误,我已经

扩展 SherlockActivity 实现 ActionBar.TabListener

就像在演示代码和文档中一样,但是,eclipse 仍然给我这个错误。有什么想法吗?

4

6 回答 6

16

我遇到的陷阱是:对 ActionBarSherlock 项目的引用需要在项目属性的 Android->Libraries 部分中,而我一直将它添加到 Build Path->Libraries 中。

于 2012-07-11T06:02:31.500 回答
9

我遇到了一个可能有帮助的奇怪异常!

已经构建了使用 ABS 的 android 项目,在 Gingerbread 上运行它工作正常,在 ICS 中它崩溃了,ICS 下的崩溃是由于这个原因,检查你的AndroidManifest.xml(为了简洁起见,删掉了一些位......

<application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" android:theme="@style/Theme.Sherlock">

android:theme部分导致了 ICS 下的崩溃,它在 Gingerbread 和旧版本下运行良好!解决方案是完全删除它!然后从您的活动中,执行以下操作:

@Override
public void onCreate(Bundle savedInstanceState) {
   if (Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH){
        this.setTheme(com.actionbarsherlock.R.style.Theme_Sherlock);
   }
   super.onCreate(savedInstanceState);
   ... // MORE CODE ....
}

这修复了 ICS 下的崩溃,ICS 不喜欢主题风格,但它适用于小于 2.3 和 4.0 以上的两个版本.. 奇怪的错误,但我是侥幸发现的!

记得在调用基类自己的onCreate之前应用主题!

于 2012-04-27T15:32:31.267 回答
4

我在 Eclipse 上包含库项目的标准过程如下:

  • 导入库项目
  • 右键单击库项目 Properties -> Android -> Set Project Build Target (确保库和主项目相同)
  • 右键单击库项目 Android 工具 -> 修复项目属性
  • 选择库项目,然后选择 Project -> Clean...
  • 选择主项目,然后选择项目 -> 清理...

这应该可以解决你的任何问题。

于 2012-04-27T15:23:58.607 回答
1

我终于找到了解决方案:

  1. 重要的!在两个项目中复制相同的 android-support-v4.jar:在库和您的项目中(这是主要问题)。
  2. 将“库”项目导入您的工作空间
  3. 右键单击库项目 Properties -> Android -> Check "Target Name" 4.x (any, API level 14,15 or 16)。底部检查“是图书馆”。
  4. 在属性中,转到“Java Build Path”,选项卡“Libraries”并在“Android Dependencies”中通常找到“android-support-v4.jar”。确定并关闭属性。
  5. 右键单击库项目 Android 工具 -> 修复项目属性
  6. 在 Menu Project -> Clean... 并选择清理“Library”项目。

在这个地方,你的项目“库”必须完成(没有错误)

  1. 创建或导入您自己的项目。示例“我的项目”
  2. 在属性中,转到“Java Build Path”,选项卡“Libraries”并在“Android Dependencies”中通常找到“android-support-v4.jar”。
  3. 现在转到“项目”选项卡。添加...并选择“库”项目。
  4. 现在在属性中转到 Android -> 检查“目标名称”4.x(任何,API 级别 14,15 或 16)。重要提示:必须与“库”项目相同。底部的“是图书馆”必须取消选中,在这个地方按添加...并选择“图书馆”项目。确定并关闭属性。
  5. 右键单击“MyProject”项目 Android 工具 -> 修复项目属性
  6. 在 Menu Project -> Clean... 并选择清理“MyProject”项目。

已经,您的项目必须完成。如果错误仍然存​​在,请重新启动 Eclipse。

于 2013-01-18T13:39:14.590 回答
1

我通过以下两个步骤解决了这个问题:

  1. 从“项目属性”/构建路径中删除“库”并在“项目属性”/Android/Library 中添加库
  2. 右键单击项目“Android工具”->“添加支持库”
于 2013-01-24T23:50:07.223 回答
1

在导入两个项目(即库和设置活动)后,首先清理并构建它们。然后右键单击settingActivity项目->属性->从左侧菜单中选择第二个选项(即android)。在右侧他们是库部分只需单击添加库。prper 路径将自动进入该框架。那解决了我的问题,我没有错误。

于 2014-06-26T17:50:37.407 回答