1、首先说一下gen目录的用处:android gen目录下的R.java并不是由用户创建了,而是android工程本身将android的资源进行自动“编号”(ID)值。
2、引起gen目录下的R文件无法更新的原因有如下几个:
(1)、res目录下的layout下的xml文件名有错。按照android的命名规范是:[a-z0-9_.] 这里要看清楚了,是不能大写开头的!导致xml无法被正确解析。
res\drawable\selector_PopUp.xml: Invalid file name: must contain only [a-z0-9_.]
(2)、layout下的xml文件里面的存在非法字符,一般在eclipse下会进行提示,如果发现有打X的情形,就需要进行修改。特别要注意是半角符号和全角符号,这个错误很隐蔽,大家要小心。还有要符合xml的书写规范。
(3)、layout下的xml文件里,控件的ID值命名有重复。这个错误很隐蔽,大家要仔细检查。因为eclipse本身并不会报错。
3、解决方法:
如果上述的原因都找了,这个时候gen目录下的R依然出错,对android工程进行refresh一下,看R文件是否已经更新。
还可以将project ->Build Automatically尽心勾选,让eclipse帮你进行自动更新。如果再不行的话,就尝试进行clean一下,看是否会正常得自动生成。
如果上述的原因都找了,但是源代码依然有错,这个使用你看一下,import android.R 这个包是否被引入了,如果被包含了,请将这个包去掉,否则错误无法解除。
以上基本上就是大家在android开发的过程中,经常遇到的R文件出错的问题,希望对大家有帮助。