对于新的Android ActionBar支持,无法找到Theme.AppCompat.Light

我正在尝试实施几天前由Google发布的新ActionBar支持库。 在过去,我已经成功地实现了ActionBarSherlock,没有任何问题,使用与Google Developer's Support Library Setup页面上列出的方法相同的方法 - 使用关于如何包含资源的指南(与ActionBarSherlock的工作方式类似)。 我将库项目作为一个库加载到我自己的项目中。

我可以告诉图书馆加载正常。 如果不是在我的MainActivity.java上扩展Activity,而是将其更改为扩展ActionBarActivity(按照Google的说明),则不会发生错误 - 并且它可以正确导入。

我甚至尝试绕过style.xml文件,并将@style/Theme.AppCompat.Light直接添加到AndroidManifest.xml中,用于android:theme="@style/ThemeAppCompat.Light" <application><activity>尝试导致相同的错误。

现在的问题是我无法改变主题,更别说没有抛出错误的构建了。 下面是我收到的错误,后面是我更改为使用新主题的style.xml文件。

我拥有与Android应用程序合作的中等体验,并且正在使用最新版本的支持库和SDK编译API 18(Android 4.3)来运行Eclipse。

生成过程中收到错误

错误:检索项的父项时出错:找不到与给定名称'@ style / Theme.AppCompat.Light'匹配的资源。 styles.xml / ActBarTest / res / values第3行Android AAPT问题

style.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="Theme.ProsoftStudio.ACTest" parent="@style/Theme.AppCompat.Light">
    </style>
</resources>

有什么建议么? 这从来都不是ActionBarSherlock的问题。 我想要使​​用这个新的支持库。 它几乎看起来像.jar加载,但不是资源。


你需要做下一步:

  • File->Import (android-sdkextrasandroidsupportv7) 。 选择“AppCompat”
  • Project-> properties->Android. 在部分库“添加”并选择“AppCompat”
  • 就这些!
  • 注意:如果您在菜单项中使用“android:showAsAction”,则需要更改前缀android,如示例http://developer.android.com/guide/topics/ui/actionbar.html


    如果像我一样,在http://developer.android.com/training/basics/actionbar/setting-up.html上关注Android教程并不断收到此错误,请尝试更改所有styles.xmlAppBaseTheme样式文件。 详细:

  • 在文件res/values/styles.xml更改该行:

    <style name="AppBaseTheme" parent="android:Theme.Light">
    

    至:

    <style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light">
    
  • 在文件res/values-v11/styles.xml更改该行:

    <style name="AppBaseTheme" parent="android:Theme.Holo.Light">
    

    至:

    <style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light">
    
  • 在文件res/values-v14/styles.xml更改该行:

    <style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
    

    至:

    <style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
    
  • 现在应用程序应该运行良好。


    我将分享我的经验与这个问题。 因为这个,我疯了,但是我发现问题是Eclipse本身的问题,而不是我的代码:在eclipse中,无法在另一个android项目中引用android库项目

    因此,如果您的C:驱动器中有Android支持库,而您的计算机上的D:驱动器中有项目,Eclipse将无法正常运行,并且不会知道Android支持库的位置(绿色勾号变成红色叉号)。 为了解决这个问题,你需要将两个项目移动到同一个硬盘上。

    链接地址: http://www.djcxy.com/p/62795.html

    上一篇: Can't Find Theme.AppCompat.Light for New Android ActionBar Support

    下一篇: Create an Android Jar library for distribution