将 Android Studio 从 2.3 更新到 3.0 后无法解析符号 '?attr/actionBarSize' for buildToolsVersion '26.0.2'
Cannot resolve symbol '?attr/actionBarSize' after updating Android Studio from 2.3 to 3.0 for buildToolsVersion '26.0.2'
将 Android Studio 从 2.3 更新到 3.0 后,我将 buildToolsVersion
从 26.0.0 更改为 26.0.2,之后我收到此错误:
Cannot resolve symbol '?attr/actionBarSize
Xml代码:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/colorPrimary"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:titleTextColor="@android:color/white"/>
依赖关系:
compile 'com.android.support:appcompat-v7:26.1.0'
compile 'com.android.support:design:26.1.0'
将所有库版本更新为 26.1.0
(最新版本)并添加:
compile 'com.android.support:support-v4:26.1.0'
如果您使用的是 Android Studio 3.0.0 及更高版本,请使用
implementation 'com.android.support:support-v4:26.1.0'
同步您的项目,错误将自动解决,因为 ?attr/actionBarSize
是 v4
库的一部分。
尝试将此添加到您的 build.gradle(app) 依赖项中:
resolutionStrategy {
force libraries.support.appCompat
force libraries.support.design
force 'com.android.support:support-utils:26.0.1'
force 'com.android.support:support-compat:26.0.1'
}
这就是我为解决完全相同的问题所做的工作。
1. 进入 SDK 管理器。
2.检查Android API 27和Android 8.0(奥利奥)
3. 点击"Apply"下载并安装这些SDK
4. 在 build.gradle 中,将 'buildToolsVersion "26.0.1"' 更改为 'buildToolsVersion "26.0.2"' 并执行 gradle 同步。
希望这可以帮助解决您的问题。
您的 buildToolsVersion 版本与依赖项中的版本不同
(例如 buildToolsVersion 是 27.0.0
但实现 'com.android.support:support-v4:27.0.1')。使它们相同。
美好的一天,我知道这有点晚了。
但是我也遇到过这个,当我更新到 Android Studio 3.0
我所做的就是我改变了
compile 'com.android.support:support-v4:26.1.0'
至
implementation 'com.android.support:support-v4:26.1.0'
希望对大家有所帮助。
没有任何帮助,但改变了:
?attr/actionBarSize
到 ?android:attr/actionBarSize
完成了工作。
这实际上是少数版本中的错误。即使您不修复它,Android 也会在运行时自动修复它。
我的问题通过将 compileSdkVersion
和 targetSdkVersion
从 26
更改为最新版本 27
解决了,您还需要将 dependencies
升级到 27
.
android {
compileSdkVersion 27
defaultConfig {
applicationId "com......"
minSdkVersion 15
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support:design:27.1.0'
}
希望这也能解决你的问题:)
这有效。
我已将编译和支持库版本从 26.x.x 更新到 27.x.x。
可能您升级了gradle的版本。
当我的gradle版本是4.4,插件版本是3.1时。1.It没问题。
在项目目录层次结构中将"Android"切换为"Project"。
然后删除一个文件夹“.idea/libraries”,只有"libraries"。
Select 菜单中的选项 "File -> Invalidate Caches / Restart... -> Invalidate and Restart"。
这项工作:
删除$HOME/.gradle/caches/transforms-1/files-1.1/appcompat-v7-27.1.1.aar
中的所有文件
将所有 Support Library 版本更改为最新的 27.1.1
,错误消失了。
请替换 android 支持库。
来自
27.1.1
到
28.0.0-alpha3
并在以下情况下将 27 替换为 28:
compileSdkVersion 28
buildToolsVersion "28.0.0"
targetSdkVersion 28
这将解决问题。
我尝试了这里的所有答案以及来自很多地方的许多其他答案,但只有以下技术对我有用。
简单的方法是你只需要 close 项目然后 import 与 Gradle 项目 相同的项目
或者您可以转到项目结构 -> 项目 -> 更改 Gradel 插件 = 4.4 和 Android 插件版本 = 3.1.4。
以上两种方法都有效。
注意:这些版本(4.4,3.1.4)是最新的,当我写这个答案时请使用最新版本而不是这些。
同样的问题,如果您使用 AndroidX
添加:
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
将 R.attr.actionBarSize
更改为 androidx.appcompat.R.attr.actionBarSize
。
将 Android Studio 从 2.3 更新到 3.0 后,我将 buildToolsVersion
从 26.0.0 更改为 26.0.2,之后我收到此错误:
Cannot resolve symbol '?attr/actionBarSize
Xml代码:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/colorPrimary"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:titleTextColor="@android:color/white"/>
依赖关系:
compile 'com.android.support:appcompat-v7:26.1.0'
compile 'com.android.support:design:26.1.0'
将所有库版本更新为 26.1.0
(最新版本)并添加:
compile 'com.android.support:support-v4:26.1.0'
如果您使用的是 Android Studio 3.0.0 及更高版本,请使用
implementation 'com.android.support:support-v4:26.1.0'
同步您的项目,错误将自动解决,因为 ?attr/actionBarSize
是 v4
库的一部分。
尝试将此添加到您的 build.gradle(app) 依赖项中:
resolutionStrategy {
force libraries.support.appCompat
force libraries.support.design
force 'com.android.support:support-utils:26.0.1'
force 'com.android.support:support-compat:26.0.1'
}
这就是我为解决完全相同的问题所做的工作。 1. 进入 SDK 管理器。 2.检查Android API 27和Android 8.0(奥利奥) 3. 点击"Apply"下载并安装这些SDK 4. 在 build.gradle 中,将 'buildToolsVersion "26.0.1"' 更改为 'buildToolsVersion "26.0.2"' 并执行 gradle 同步。
希望这可以帮助解决您的问题。
您的 buildToolsVersion 版本与依赖项中的版本不同 (例如 buildToolsVersion 是 27.0.0 但实现 'com.android.support:support-v4:27.0.1')。使它们相同。
美好的一天,我知道这有点晚了。
但是我也遇到过这个,当我更新到 Android Studio 3.0
我所做的就是我改变了
compile 'com.android.support:support-v4:26.1.0'
至
implementation 'com.android.support:support-v4:26.1.0'
希望对大家有所帮助。
没有任何帮助,但改变了:
?attr/actionBarSize
到 ?android:attr/actionBarSize
完成了工作。
这实际上是少数版本中的错误。即使您不修复它,Android 也会在运行时自动修复它。
我的问题通过将 compileSdkVersion
和 targetSdkVersion
从 26
更改为最新版本 27
解决了,您还需要将 dependencies
升级到 27
.
android {
compileSdkVersion 27
defaultConfig {
applicationId "com......"
minSdkVersion 15
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support:design:27.1.0'
}
希望这也能解决你的问题:)
这有效。
我已将编译和支持库版本从 26.x.x 更新到 27.x.x。
可能您升级了gradle的版本。 当我的gradle版本是4.4,插件版本是3.1时。1.It没问题。
在项目目录层次结构中将"Android"切换为"Project"。 然后删除一个文件夹“.idea/libraries”,只有"libraries"。 Select 菜单中的选项 "File -> Invalidate Caches / Restart... -> Invalidate and Restart"。
这项工作:
删除$HOME/.gradle/caches/transforms-1/files-1.1/appcompat-v7-27.1.1.aar
中的所有文件将所有 Support Library 版本更改为最新的 27.1.1
,错误消失了。
请替换 android 支持库。
来自
27.1.1
到
28.0.0-alpha3
并在以下情况下将 27 替换为 28:
compileSdkVersion 28
buildToolsVersion "28.0.0"
targetSdkVersion 28
这将解决问题。
我尝试了这里的所有答案以及来自很多地方的许多其他答案,但只有以下技术对我有用。 简单的方法是你只需要 close 项目然后 import 与 Gradle 项目 相同的项目 或者您可以转到项目结构 -> 项目 -> 更改 Gradel 插件 = 4.4 和 Android 插件版本 = 3.1.4。 以上两种方法都有效。
注意:这些版本(4.4,3.1.4)是最新的,当我写这个答案时请使用最新版本而不是这些。
同样的问题,如果您使用 AndroidX
添加:
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
将 R.attr.actionBarSize
更改为 androidx.appcompat.R.attr.actionBarSize
。