无法解析@ style / Theme.Sherlock

时间:2012-04-27 14:34:47

标签: android actionbarsherlock

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

我还在遇到问题。当我尝试将android:theme =“@ style / Theme.Sherlock”添加到我的清单文件时,我收到错误:

  

找不到与给定名称匹配的资源(在'theme'处有值   '@风格/ Theme.Sherlock')。

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

  

扩展SherlockActivity实现ActionBar.TabListener

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

6 个答案:

答案 0 :(得分:16)

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

答案 1 :(得分: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 之前应用主题!

答案 2 :(得分:4)

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

  • 导入库项目
  • 右键单击库项目属性 - &gt; Android - &gt;设置项目构建目标(保险库和主项目是相同的)
  • 右键点击图书馆项目Android工具 - &gt;修复项目属性
  • 选择图书馆项目,然后选择项目 - &gt;清洁...
  • 选择主项目,然后选择项目 - &gt;清洁...

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

答案 3 :(得分:1)

我终于找到了解决方案:

  1. 重要!在两个项目中复制相同的android-support-v4.jar:在库和你的项目中(这是主要问题)。
  2. 将“图书馆”项目导入您的工作场所
  3. 右键单击库项目属性 - &gt; Android - &gt;检查“目标名称”4.x(任何,API级别14,15或16)。底部检查“是库”。
  4. 在属性中,转到“Java Build Path”,选项卡“Libraries”并在“Android Dependencies”中找到“android-support-v4.jar”。好的并关闭属性。
  5. 右键点击图书馆项目Android工具 - &gt;修复项目属性
  6. 菜单项目中的
  7. - &gt;清理...并选择清除“库”项目。
  8. 在这个地方,您的项目“库”必须完成(没有错误)

    1. 创建或导入您自己的项目。示例“MyProject”
    2. 在属性中,转到“Java Build Path”,选项卡“Libraries”并在“Android Dependencies”中找到“android-support-v4.jar”。
    3. 现在转到“项目”标签。添加...并选择“库”项目。
    4. 现在在属性中转到Android - &gt;检查“目标名称”4.x(任何,API级别14,15或16)。重要提示:必须与“库”项目相同。底部“Is Library”必须是UNCHECKED并在这个位置按Add ...并选择“library”项目。好的和关闭属性。
    5. 右键点击“MyProject”项目Android工具 - &gt;修复项目属性
    6. 菜单项目中的
    7. - &gt;清理...并选择清除“MyProject”项目。
    8. 您的项目必须完成。如果错误仍然存​​在,请重新启动Eclipse。

答案 4 :(得分:1)

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

  1. 从“项目属性”/构建路径中删除“库”,并在“项目属性”/ Android / Library中添加库
  2. 右键点击项目“Android工具” - &gt; “添加支持库”

答案 5 :(得分:1)

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