Android Studio中找不到Theme.AppCompat.Light资源。

15
尝试扩展ActionBarActivity时,我需要使用AppCompat主题(Theme.AppCompat.Light)。当我尝试在清单和styles.xml中添加它时,会出现错误:
“Error:(31, 28) No resource found that matches the given name (at 'theme' with value '@android:style/Theme.AppCompat.Light')。”
尽管我已经下载了支持库并将其包含在我的build.gradle文件中。
dependencies {
compile 'com.android.support:appcompat-v7:19.0.+'
compile 'com.android.support:support-v4:19.0.+'}

1
我有同样的问题。在OSX上使用Android Studio 0.8.2。 - www.jensolsson.se
5个回答

24
在Android Studio中,当我使用android:theme='@android:style/Theme.AppCompat.Light'时,遇到了相同的错误,但当我在AndroidManifest.xml文件中使用android:theme="@style/Theme.AppCompat.Light"时,错误消失了。
区别似乎在于引用Android系统提供的主题"@android"和本地定义的主题"@style"。使用本地定义的主题是有效的,因为已经在gradle依赖项上定义了appcompat库compile 'com.android.support:appcompat-v7:19.0.+',这将被导入为本地主题。
供参考,谷歌针对Android开发者官方文档的添加Android 2.1+设备上ActionBar的指令是: android:theme="@style/Theme.AppCompat.Light" https://developer.android.com/training/basics/actionbar/setting-up.html

5

从Android Studio开始,与Eclipse不同:

  1. 打开您的应用程序的build.gradle文件。

  2. 包含appcompat项目并在依赖项部分添加compile "com.android.support:appcompat-v7:18.0.+",如下例所示:

    dependencies { ... compile "com.android.support:appcompat-v7:18.0.+" }

  3. 我的笔记:在styles.xml中,删除对Android的引用,如下所示:

    style name="AppTheme" parent="Theme.AppCompat.Light"

更多细节请查看链接


1
今天最新版本的Android Studio“开发套件”对我来说无法工作。 - Victor Zamanian

1
发生的情况是,负责该样式的依赖项未被识别。
如果您有以下内容,请从build.gradle中删除它们:
'com.android.support:appcompat-v7:28.0.0'
'com.android.support:design:28.0.0'

然后同步,然后撤销删除,然后再次同步。

0

在文件菜单中,清除缓存/重启总是对我有效


0

使用Theme.AppCompat.Light代替AppCompat.Theme.Light


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接