我正在尝试实现谷歌几天前发布的新的ActionBar支持库。在过去,我已经成功地实现了ActionBarSherlock没有任何问题使用相同的方法在谷歌开发人员的支持库设置页面上列出-使用关于如何包括资源的指南(这是类似于ActionBarSherlock是如何做到的)。我把这个库项目作为库加载到我自己的项目中。

我能看出图书馆的资料还不错。当,而不是在我的MainActivity.java上扩展活动,我把它改为扩展ActionBarActivity(根据谷歌的指令),没有发生错误-它正确地导入。

我甚至尝试绕过style.xml文件,添加@style/Theme.AppCompat。光直接在AndroidManifest.xml的<应用>和<活动>与android:theme="@style/ThemeAppCompat。所有的尝试都会导致同样的错误。

现在的问题是我不能让它改变主题,更不用说在不抛出错误的情况下构建了。下面是我收到的错误,后面是我更改为使用新主题的style.xml文件。

我有一定的Android应用程序工作经验,正在运行Eclipse的最新版本的支持库和SDK编译API 18 (Android 4.3)。

生成时收到的错误

获取父项的错误:没有找到匹配给定名称的资源'@style/Theme.AppCompat.Light'。styles.xml /ActBarTest/res/values line 3 Android AAPT Problem

style.xml

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

有什么建议吗?这从来不是ActionBarSherlock的问题。我想使用这个新的支持库。看起来像是.jar在加载,而不是资源。


当前回答

工作原理:

<style name="MyApp" parent="Theme.AppCompat.Light">
</style>
<style name="MyApp" parent="@style/Theme.AppCompat.Light">
</style>
<style name="Theme.AppCompat.Light.MyApp">
</style>

其他回答

你需要参考$ANDROID_SDK/extras/android/support/v7/appcompat

这个公认的解决方案曾经对我有用,但现在不是了。我必须在一个新的工作空间中重新创建一个相同类型的hello-world(!),对其进行编译,然后复制所有目录,包括.hg和.hgignore。 Hg差异显示:

-        android:targetSdkVersion="19" />
+        android:targetSdkVersion="21" />

Binary file libs/android-support-v4.jar has changed

看起来Eclipse想要为API 21编译,而不能使用API 19做任何事情。黑暗。

忘记一切。只需使用从Android Studio下载的appcompat库即可。它拥有所有缺失的定义。无论您是否在Eclipse中使用。

当Eclipse(Luna)/AndroidSDK(不是Android Stduio)在2015年1月14日的HelloWorld项目中与最新的工具和库一起使用时,我就遇到了这种情况。当我安装这些工具并将HelloWorld作为第一个应用程序时,我接受了所有默认设置。-这就是我的问题所在。

首先,检查是否安装了“Android Support Library”库。 如果没有,请安装。默认情况下不安装。 你可以在菜单中的“Android SDK管理器”中完成这一切。

(Android SDK管理器->额外-> Android支持库)

祝福, (债务人)< > <

对于Android Studio或IntelliJ,你所需要做的就是在gradle.build中更新你的依赖。我使用了以下方法:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.2'
}