Android Studio 3.5.3中Nullable注解及Activity父类代码标红问题求助
解决Android Studio 3.5.3中Context/Activity源码红标及
android.annotation.nullable报错问题 嘿,我帮你整理了几个能解决这个问题的实用方案,都是处理这类注解相关源码解析问题时常用的办法:
先确认SDK源码有没有完整下载
打开Android Studio的File > Settings > Appearance & Behavior > System Settings > Android SDK,切到SDK Platforms标签页,看看你项目用的SDK版本对应的Sources for Android SDK是不是已经勾选并下载好了。有时候源码包缺了,IDE就没法正确解析类里的注解引用。调整注解相关的依赖配置
去项目的模块级build.gradle文件里,加一下或者确认有没有这个依赖:implementation 'androidx.annotation:annotation:1.1.0'要是你的项目还在用旧的support库,就换成这个:
implementation 'com.android.support:support-annotations:28.0.0'同步完项目,IDE应该就能识别
@Nullable注解了。清理缓存重启IDE试试
这是解决很多IDE抽风问题的万能招:- 点
File > Invalidate Caches / Restart - 弹出窗口里选
Invalidate and Restart
重启后IDE会重新索引所有文件,很多注解相关的红标问题都会自动消失。
- 点
检查项目SDK版本是否匹配
确认模块级build.gradle里的compileSdkVersion、targetSdkVersion和你下载的SDK版本一致,比如:android { compileSdkVersion 28 defaultConfig { targetSdkVersion 28 // 其他配置忽略 } }版本不匹配的话,源码解析时也会找不到正确的注解类。
手动导入正确的注解类(临时方案)
如果上面的方法都不管用,可以试试在报错的类里手动导入正确的@Nullable注解:import androidx.annotation.Nullable; // 旧support库用这个:import android.support.annotation.Nullable;不过这只是临时解决,还是优先搞定根源问题比较好。
内容的提问来源于stack exchange,提问作者Reza
相关产品推荐
相关产品推荐

