Android开发过程中,碰到R cannot be resolved to a variable的报错信息,从网上搜了一堆,发现都不管用如下:最后解决了,在此做个记录,网上总结的如下:
1. 检查Android 的SDK是否丢失需要重新下载,检查build path
2.确保class没有import Android.R;
3,错误class引用的layout的xml文件没有错误
4.检查AndroidManifest.xml文件,里边的package,layout配置文件,strings.xml等的字符串全部书写正确
5.layout的xml文件中引用的strings.xml中的字符串拼写完全正确
6. 在layout 的xml文件手写添加一个控件,看id能否在R.java中自动生成,如果不能,那很大可能就是这个layout 的xml文件有问题,查看格式是否使用正确,或者包含什么非法字符串,或者调用到了不正确的字符串,等等,可以使用排除法,挨个去掉控件,直到发现 error message消失或者id能在R.java中自动生成。
7.删掉gen文件夹,使R.java重新自动生成一次,如果不能生成,继续检查layout的xml文件是否有如上不易发觉的问题
8.Clean project ,重新build,或者重新import project。
9.重启eclipse
我的这个错误出现的和上面的都不一样,下面贴出来我的问题:
我的出错的原因是这样的,我从网上下载了几个png图片,直接放到资源文件中了,刚开始的时候还没有出现问题 ,我手贱的点击了一下project的clean,然后R.java文件就丢失了,按照网友搜集的上述问题,我挨个检查过一遍,发现不是上述原因造成的,最后看那个错误输出,发现问题所在了:
这个就是自己放到资源文件中的文件名称不符合规范导致的:
把名称规范一下,就ok了!!