在使用v7兼容性支持主题时,IDE“无法parsing@ style / Theme.Appcompat”

这并不是一个真正的大问题,因为我的项目仍然是构build并正确运行(使用gradle),但是我很难让Android Studio识别API 18 SDK中发布的应用程序兼容性主题(为了允许对android 2.1的actionbar支持以上)。

我有支持库加载成功,因为代码完成是可能的java文件中的ActionBar类。 问题是Android Studio在AndroidManifest.xml中显示红色文本错误,用于分配Theme.AppCompat.Light。

有没有一种方法来启用Android Studio中的外部库清单中声明的​​主题资源的代码完成?

更新这里是我的AndroidManifest中的<activity>块:

 <activity android:name="com.example.activities.MainActivity" android:label="@string/app_name" android:screenOrientation="portrait" android:theme="@style/Theme.AppCompat.Light" > 

我也尝试在应用程序块中设置主题:

 <application android:allowBackup="true" android:icon="@drawable/main_final_ic" android:label="@string/app_name" android:logo="@drawable/main_final_enzo" android:theme="@style/Theme.AppCompat.Light" > 

同样,这两个工作和编译确定,但在我的IDE中出现错误的红色文本。 我也刚刚证实,在eclipse中运行我的项目时,发生了同样的问题。

我有同样的问题。 听起来像你有V7的jar文件编译好,但你可能会错过所需的xml资源。你需要手动包含V7包提供的'Theme.xml'。 这是我做的修复它。

查看下: 使用资源添加库 http://developer.android.com/tools/support-library/setup.html

这里提供的说明不是很清楚,因为它没有告诉你带来任何资源(可能是Android Studio中的一个错误?)

这是我做的:

  1. 在pipe理器中更新您的SDK,并确保在“extra”中包含“Android支持库”
  2. 在文件资源pipe理器中findSDK(在Mac上的Finder)跟踪额外的文件夹(Windows上的..\sdk\extras\android\support\v7\appcompat\res\values )。 在那里有一个“themes.xml”和“themes_base.xml”。复制这两个文件。
  3. 在您的项目中将这些文件粘贴到“值”目录中
  4. 做一个重build,并为我做了诡计。

我改变了:

classpath'com.android.tools.build:gradle:+'

至:

classpath'com.android.tools.build:gradle:2.2.3'

现在正在工作!

不要将库添加到Java Build Path中,在Settings> Android> Libraries> Add Library中添加库(作为项目)。

菲利普Cvejic的答案是有用的。 我的android studio版本是1.3.1,具有相同的问题。 它在添加一行“compile”com.android.support:appcompat-v7:23.0.0'“之后起作用,如下所示:

  dependencies { compile "com.android.support:support-v4:23.0.0" compile "com.android.support:support-v13:23.0.0" compile "com.android.support:cardview-v7:23.0.0" compile 'com.android.support:appcompat-v7:23.0.0' } 

在android studio上修复对我来说很简单。

点击帮助—>检查更新

然后,实际阅读提示说什么,并决定是否要更新或稳定的更新。

一旦android studio重新启动它应该工作。

附注:在我重build项目之前,一切仍然以红色标出。

我知道我回答迟了,但这个答案可能有助于期货参观者。

  • 从Gradle 0.12.+更改为0.12.1 ,它将起作用。

     classpath 'com.android.tools.build:gradle:0.12.1' 

问题是我的appcompact图书馆项目已经位于不同的位置。 在导入时,我必须检查“复制项目到工作区”这是所有!

一个共同的问题。 在我的情况下,这工作:

在“android-support-v7-appcompat”项目中:

 -Delete “android-support-v7-appcompat” from Package explorer. -Import again and check “Copy into workspace” -In Properties -> Android -> in Project build target, uncheck Android 2.2 and check Android 4.1.2 -In Java build path, uncheck if you have any .jar library, and uncheck the Dependences 

另一方面,使用“android-support-v7-appcompat”

 in Propiedades -> Android add the library, but uncheck "IsLibrary”. -In Android -> Project build tarjet check Android 4.0. -In "Java Build Path" -> Order and Export -> Unchecked the .jar library -Finally do a “Project -> Clean” both projects 

添加compile 'com.android.support:appcompat-v7:21.0.0'到gradle.build(Module:app)中的依赖关系,重build项目在Android studio 1.0.2中解决了我的问题。

我也检查了SDKpipe理器,我确实有下载的支持库。

降级build:gradle版本2.3.32.2.3工作了几个小时后挣扎!

 classpath 'com.android.tools.build:gradle:2.2.3' 

gradle-wrapper.properties:

 distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip