📌  相关文章
📜  错误:: AAPT: 错误: 找不到资源样式 Widget.AppCompat.TextView (aka com.detoxexample.test:style Widget.AppCompat.TextView). (1)

📅  最后修改于: 2023-12-03 15:28:34.531000             🧑  作者: Mango

错误: 找不到资源样式 Widget.AppCompat.TextView

当您在使用 Android AppCompat 库的时候,您可能会碰到这个错误:“找不到资源样式 Widget.AppCompat.TextView”,此错误往往是由于缺少依赖或版本不匹配所引起的。

问题描述

在编译 Android 应用程序时,您可能会遇到以下错误消息:

错误:找不到资源样式 Widget.AppCompat.TextView (aka com.example.myapp:style/Widget.AppCompat.TextView)
问题原因

这个错误通常是由于缺少 AppCompat 库的依赖或者版本不兼容所导致的。在使用 AppCompat 库时,您需要检查以下几个方面:

  • 您是否在应用的 build.gradle 文件中正确地添加了依赖声明;
dependencies {
    implementation 'com.android.support:appcompat-v7:28.0.0'
}
  • 您是否将 targetSdkVersion 设置为 AppCompat 库所支持的版本;
android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "com.example.myapp"
        minSdkVersion 15
        targetSdkVersion 28  // 这里需要与 AppCompat 的版本号匹配
        versionCode 1
        versionName "1.0"
        ...
    }
}
  • 您是否正确地使用了 AppCompat 主题和样式。
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>
解决方案

要解决这个问题,您可以尝试以下几个步骤:

  1. 确保您的应用程序正确地声明了 AppCompat 库的依赖,并且版本号与您的 targetSdkVersion 匹配。

  2. 如果您已经正确地声明了依赖并且版本号也匹配,您可以尝试清除 Gradle 缓存并重新构建应用程序。执行以下命令:

./gradlew clean

接着,重新构建应用程序:

./gradlew assembleDebug
  1. 如果以上两个步骤都没有解决问题,则可以尝试更新 AppCompat 库的版本。您可以在 build.gradle 文件中更新 appcompat 版本和 support 库版本。
dependencies {
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support:support-v4:28.0.0'
}

此时,您可以尝试重新构建应用程序,应该能够成功编译。

结论

“找不到资源样式 Widget.AppCompat.TextView”的错误往往是由于缺少依赖或版本不匹配所引起的。解决问题的方法包括检查依赖声明,检查 targetSdkVersion 是否正确,使用正确的 AppCompat 主题和样式,清除缓存并重新构建等。如果以上方法都不能解决问题,您可以尝试更新 AppCompat 库的版本来解决问题。