解决AS中主题Validates resource references inside Android XML files和预览:Failed to load AppCompat ActionBar

本文详细介绍了如何解决Android Studio中style文件中主题报错及XML预览失败的问题,通过调整依赖、同步项目和修改主题引用等步骤,成功解决了这些问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近用AS新创建了一个Project,升级了Gradle后,发现style文件中主题报红并且xml文件预览不了,但是不影响编译。但是对一个追求完美的码农(手动狗头)来说也是难以忍受的,于是果断度娘一下

一、style文件中:Cannot resolve symbol ‘Theme’ less… (Ctrl+F1) Validates resource references inside Android XML files问题的解决

下面是网上对Cannot resolve symbol ‘Theme’ less… (Ctrl+F1) Validates resource references inside Android XML files问题的常见解决方案:

1、清理项目:Build——>Clean Project
2、与Gradle文件同步:File——>Sync Project with Gradle Files
3、清空缓存重启:File——>Invalidated Caches/Restart
4、升级SDK Manager
5、重装Android Studio(代价太大,弃用)

我试了前四种方法都没用,如果对你有用,那么真心的恭喜你!

准备要放弃的时候又不死心去stackoverflow查了下,可以说功夫不负有心人,下面这种方案终于解决了我这个问题:

If That doesn’t work, following might help (Solution 3) :
1、Remove/Cut following dependencies :(移除对v7包的依赖)
implementation 'com.android.support:appcompat-v7:x.x.x' implementation 'com.android.support:design:x.x.x'
2、Click on ‘Sync Now’(同步项目)
3、Add/Paste dependencies again and Sync again(重新添加对v7包的依赖在同步项目)
4、Done.
注意:如果你的项目中依赖的第三方库也对v7包添加了依赖,可以按上面的办法,先移除对第三方库的依赖,同步后再重新添加

style文件中Validates resource references inside Android XML files问题总结:

先移除对v7包的依赖(包括第三方库中的),同步后再重新添加依赖

二、xml文件预览时Failed to load AppCompat ActionBar with unknown error问题的解决:

一般这个问题也会伴随着上一个问题出现,如果你已经解决了上面的问题,预览时还是出现问题,那么你只需要这样做:

//这是我预览出现问题的主题
<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>
        <item name="android:windowAnimationStyle">@style/Animation_Activity</item>
    </style>

只需要把Theme.AppCompat.Light.DarkActionBar替换成Base.Theme.AppCompat.Light.DarkActionBar,是的,就是这么简单,你会发现已经可以预览了

希望对你有帮助

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值