使用v7兼容性支持主题时,IDE"无法解析@ style/Theme.Appcompat"

Joh*_*hey 41 eclipse android android-support-library android-studio

这不是一个很大的问题,因为我的项目仍然构建并正确运行(使用gradle),但我无法让Android Studio识别API 18 SDK中发布的应用程序兼容性主题(允许Android 2.1的操作栏支持)以上).

我成功加载了支持库,因为java文件中的ActionBar类可以完成代码.问题是Android Studio在AndroidManifest.xml中显示了对Theme.AppCompat.Light赋值的红色文本错误.

有没有办法在Android Studio中的外部库中为清单中声明的​​主题资源启用代码完成?

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

<activity
    android:name="com.example.activities.MainActivity"
    android:label="@string/app_name"
    android:screenOrientation="portrait"
    android:theme="@style/Theme.AppCompat.Light" >
Run Code Online (Sandbox Code Playgroud)

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

<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" >
Run Code Online (Sandbox Code Playgroud)

同样,这些工作和编译都正常,但在我的IDE中显示为带有错误的红色文本.我还刚刚确认在eclipse中运行我的项目时会出现同样的问题.

kev*_*kev 16

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

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

这里提供的指示不是很清楚,因为它不会告诉您带来任何资源.(可能是Android Studio中的错误?)

这是我做的:

  1. 在管理器中更新您的SDK,并确保在extra中包含"Android支持存储库"
  2. 转到文件资源管理器中的SDK(Mac上的Finder)跟踪额外的文件夹(..\sdk\extras\android\support\v7\appcompat\res\values在Windows上).在某处有"themes.xml"和"themes_base.xml".复制这两个文件.
  3. 在项目中将文件粘贴到"values"目录中
  4. 做了重建,这对我有用.

  • 这会导致其他错误,因为这些主题本身会引用其他xml条目.另外,如果可能的话,我宁愿不为我的项目提供同一主题的2个版本. (6认同)

SUX*_*UXA 7

我改变了:

classpath'com.android.tools.build:grad::'

至:

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

现在它正在工作!


Yui*_*aki 4

此问题在 Android Studio v0.2.7 中已修复。

  • 我使用的是 0.8.1 版本,遇到了这个问题。 (15认同)
  • 我正在开发 1.1.0,但仍然遇到这个问题。难以置信。 (2认同)