我一直用Eclipse编程Android,并决定开始迁移到AndroidStudio。我决定使用与Eclipse相同的SDK,然后:

开始新项目设置最低SDK 4.0(API级别14)选择空白活动选项活动名称和布局名称使用的默认名称点击完成

几秒钟后,Gradle完成了构建,并在文件Teste4\app\build\intermediates/deblodded aar\com.android.support\appcompat-v7\23.0.0\res\values-v23\values-v23.xml中向我抛出了两个错误,其中包含以下消息:

错误:(2)检索项的父项时出错:找不到与给定名称“android:TextAppearance.Material.Widget.Button.Inverse”匹配的资源。错误:(2)检索项的父项时出错:找不到与给定名称“android:Widget.Material.Button.Colored”匹配的资源。

在文件->项目结构->模块:app(左列)->财产选项卡下,我设置了以下版本:

“编译Sdk版本”:Android 5.1(API级别22)“生成工具版本”:23.0.2

我应该怎么做才能解决这个问题?

我已经尝试了堆栈溢出问题appcompat-v7:21.0.0中的建议:没有找到与给定名称匹配的资源:attr“android:actionModeShareDrawable”,但它不起作用。


当前回答

当您更新Android Studio时,它默认使用API版本23,这是其发生的主要原因。所以

首先,在build.gradle(模块:app)中检查AppCompat版本即,

如果更改为23后出现错误,则只需下载

将Sdk版本编译为API 23,将Build Tools版本编译为23.0.0

来自SDK管理器。如果已下载,则:

1. Go to SDK Manager and
2. Under Project Structure, change *Compile SDK Version* to API 23, and *Build Tools Version* to 23.0.0

单击SDK管理器按钮并打开对话框。

单击SDK平台,检查是否下载了Android 6.0。

如果没有,那么先下载。完成下载后,单击应用。

现在,您需要将设置中的更改应用于项目。然后按Ctrl+Alt+Shift+S打开设置

从列表中单击应用程序。单击财产将编译SDK版本更改为API 23将生成工具版本更改为23.0.0

别忘了重建项目。

然后你的错误就会消失。

其他回答

如果您正在使用phonegap(跨平台),并且遇到了上述问题,只需使用下面的命令删除android平台。

phonegap平台删除android

然后再添加一次。

phonegap平台添加android

然后问题就解决了。

您的编译SDK版本必须与支持库的主要版本匹配。

由于您使用的是支持库的版本23,因此需要根据AndroidSDK的版本23进行编译。

或者,您可以切换到最新的支持库v22,继续根据Android SDK版本22进行编译。

另一种解决方案:导航到

\sdk\extras\android\m2repository\com\android\support\appcompat-v7\23.x.x

使用7-zip或winrar打开.aar文件,在res文件夹中删除values-23文件夹并保存更改。

正如Tanis.7x所指出的,支持库版本(23)与targetSdkVersion(22)不匹配

您可以通过执行以下操作来解决此问题:

在应用程序模块的build.grade文件中,更改以下代码行

compile 'com.android.support:appcompat-v7:23.0.0'

To

compile 'com.android.support:appcompat-v7:22.+'

这将使用与SdkVersion 22兼容的appcompat版本的最新版本。

我找到了解决方案,当我更新sdk时,问题就开始了,之后我使用了不同的buildToolsVersion('22.0.1'),我使用的是不同的支持库,如compile“com.android.support:appcompat-v7:23.0.0”,如下图所示

这引发了“android.widget.Material…”的问题然后我使用了相同版本的支持库,如compile“com.android.support:appcompat-v7:22.0.1”及其DONE。(在下面的屏幕截图中显示)