在布局 xml 中添加新 View 时,我注意到在使用 id @+id/package
时我的构建失败并出现错误消息 error: invalid symbol: 'package '
。然后我开始试验并注意到在 aapt 运行时,public
、void
、int
等 Java 关键字会导致此错误。
为什么会出现这个错误?
最佳答案
资源编译器将您的资源 id 转换为类 R.id
的字段(您可以通过查看以下内容时自动生成的 R.java
文件来查看资源已编译)。由于将 Java 关键字用作类字段名称是非法的,因此将 Java 关键字用作资源名称(无论是 id、布局还是其他任何内容)也是非法的。
请注意,出于同样的原因,您不能使用数字作为资源名称(例如,您不能拥有名为“3.png”的图形文件)。所有资源名称都必须是有效的 Java 标识符。
关于android - 为什么 Java 关键字无效的 Android 资源 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17100823/