2012-04-27 28 views
16

我试图做动作条福尔摩斯4的使用,针对SDK 15分钟SDK 8.以下张贴在这里提供的用法网站上的说明和伟大的影片后:http://www.youtube.com/watch?v=avcp6eD_X2k不能解析@风格/ Theme.Sherlock

我仍然遇到问题。当我尝试到Android补充:主题=“@风格/ Theme.Sherlock”我的清单文件,我得到的错误:

No resource found that matches the given name (at 'theme' with value '@style/Theme.Sherlock').

我已经包含了动作条福尔摩斯库项目到我的项目,并导入语句有没有提出任何错误,我已经

extends SherlockActivity implements ActionBar.TabListener

就像在演示代码和文档但仍然,eclipse给我这个错误。那里有任何想法?

+0

您使用的是eclipse吗?你把Actionbar Sherlock标记为android库吗? – dmon 2012-04-27 14:51:17

回答

9

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

已经建立了一个使用ABS的Android项目,姜饼上运行它正常工作,在它崩溃ICS,ICS下崩溃的发生是由于此,请检查您AndroidManifest.xml中(已修剪出位的简洁...

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

这是机器人:该ICS下导致崩溃的主题的一部分,它在姜饼和旧版本!解决方案工作得很好是从你的活动完全删除它,然后,做到这一点!

@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之前应用主题!

+0

这样做!非常感谢 – 2012-04-27 15:45:15

+0

嘿!很高兴帮助:) – t0mm13b 2012-04-27 15:54:27

+2

这不应该是必要的。我已经在许多示例应用程序中使用了ActionBarSherlock,其中Android 2.1到4.0.3的所有内容都采用''中定义的样式,没有任何不良影响。虽然你的方法*可能*工作*目前*,我不会依赖于 - 如果你正在使用'SherlockActivity'或亲属,你真的应该使用正确的主题。 – CommonsWare 2012-04-27 16:21:24

4

我对包括基于Eclipse库项目标准的程序是这样的:

  • 导入库项目
  • 右键单击库项目属性 - > Android的 - >设置项目构建目标(确保库和主项目是相同的)
  • 右键单击库项目的Android工具 - >修复项目属性
  • 选择库项目,然后项目 - >清除...
  • 选择主项目,然后项目 - >清洁...

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

+0

感谢您的快速回复。不幸的是这个技巧并没有解决这个错误。 – 2012-04-27 15:34:33

16

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

+0

这个答案救了我免于痛苦 – 2013-11-05 06:37:34

1

我终于找到了解决办法:

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

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

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

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

1

我解决了这个问题由follwoing 2步我的项目:

  1. 从“项目属性” /构建路径删除“库”和“项目属性” /安卓/库
  2. 添加库
  3. 右键点击项目“安卓工具” - >“添加支持库”
1

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