Android Studio更新后导入android.R.*触发SuspiciousImport警告的原因咨询
关于Android Studio更新后
android.R.*导入出现的警告问题 嘿,我来帮你捋清楚这个问题~
为什么更新后突然出现这个警告?
这其实是Android Studio的Lint代码检查规则更新导致的。新版本的Lint把导入android.R类标记为「可疑导入」——原因很简单:android.R是系统自带的资源类,而我们开发时绝大多数场景用的是自己项目生成的com.xxx.xxx.R(比如你的项目里就是com.dooale.dooale.R)。如果不小心导入了android.R,很容易出现资源引用错误(比如找不到你自己定义的布局、字符串资源)。之前的Android Studio版本没有这个检查项,所以你之前从来没收到过这个提示。
该怎么处理这个警告?
分两种情况:
- 如果是故意导入
android.R(比如你确实需要用到系统内置的资源):直接按照提示添加@SuppressLint("SuspiciousImport")注解就可以了。你可以把它加在导入语句上面,或者整个类的顶部:// 加在导入语句上 @SuppressLint("SuspiciousImport") import android.R; // 或者加在类上 @SuppressLint("SuspiciousImport") public class YourListActivity extends ListActivity { // ... 你的代码 } - 如果是误导入
android.R:赶紧替换成你自己项目的R类,也就是import com.dooale.dooale.R;,这样能彻底避免后续可能出现的资源引用bug。
其实Lint的这个提示是在帮你提前规避潜在问题,毕竟混用系统R和自定义R很容易踩坑,所以如果不是必须用android.R,更建议使用自己项目生成的R类哦~
内容的提问来源于stack exchange,提问作者Andrea
相关产品推荐
相关产品推荐

