ERROR:: AAPT: error: resource style/Widget.AppCompat.TextView not found. 原因及解决
Posted wx62d20ab5537c1
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ERROR:: AAPT: error: resource style/Widget.AppCompat.TextView not found. 原因及解决相关的知识,希望对你有一定的参考价值。
把android项目从support-v4升级到androidx之后,出现错误
ERROR:: AAPT: error: resource style/Widget.AppCompat.TextView (aka com.example:style/Widget.AppCompat.TextView) not found.
一头雾水,在网上搜索,有人说是子项目和主项目版本不匹配,使用如下方式统一,统一之后,发现还是不行。
除此也搜索不到什么有用的东西,根据经验,找不到答案,要么是问题太偏,要么是问题太简单。
我想多是后者吧,问不出所以然,那就只能自力更生。
既然没有,要不自己定义一下,使用\\Android_Sdk\\platforms\\android-28\\data\\res\\values\\styles.xml中style做基类。
<style name="Widget.AppCompat" parent="@android:style/Widget"/>
<style name="Widget.AppCompat.TextView" parent="@android:style/Widget.TextView"/>
不过添加之后又有其他错误,类似
AGPBI: "kind":"error","text":"Android resource linking failed","sources":["file":"C:\\\\Users\\\\lgs\\\\.gradle\\\\caches\\\\transforms-3\\\\fdf8d8302d80daaa032d669a233a0150\\\\transformed\\\\material-1.4.0\\\\res\\\\layout\\\\mtrl_alert_select_dialog_multichoice.xml","position":"startLine":44],"original":"ERROR:C:\\\\Users\\\\lgs\\\\.gradle\\\\caches\\\\transforms-3\\\\fdf8d8302d80daaa032d669a233a0150\\\\transformed\\\\material-1.4.0\\\\res\\\\layout\\\\mtrl_alert_select_dialog_multichoice.xml:45: AAPT: error: attribute drawableLeftCompat (aka com.example:drawableLeftCompat) not found.\\n ","tool":"AAPT"
<CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@android:id/text1"
。。。
app:drawableLeftCompat="?android:attr/listChoiceIndicatorMultiple" //资源找不到
app:drawableStartCompat="?android:attr/listChoiceIndicatorMultiple"
android:drawablePadding="20dp"
android:ellipsize="marquee" />
发现许多相关资源也找不到。
Widget.AppCompat.TextView到底在哪里?
在新Androidx项目中Widget.AppCompat.TextView明明在\\appcompat-1.3.1\\res\\values\\values.xml被定义,为何找不到呢?
<style name="TextView1" parent="Widget.AppCompat.TextView"/>
在当前项目中Widget.AppCompat.TextView不但找不到,连Widget.AppCompat都找不到,
而传统项目中使用的基类是android.widget.TextView,问题真的可能发生在appcompat的引用上。
仔细查看项目,真的有子模块使用了support-v4:28.0.0。大致可以猜测android-28和appcompat冲突了。
原来是所有子模块的support-v4:28.0.0都要替换为appcompat:1.3.1
其他兼容问题做下简单的处理就可以了。
关于:
编者:李国帅
以上是关于ERROR:: AAPT: error: resource style/Widget.AppCompat.TextView not found. 原因及解决的主要内容,如果未能解决你的问题,请参考以下文章
ERROR:: AAPT: error: resource style/Widget.AppCompat.TextView not found. 原因及解决
AAPT2 error: check logs for details 问题的终究修复
AAPT: error: resource android:attr/dialogCornerRadius not found.
解决AAPT: error: attribute android:requestLegacyExternalStorage not found.