导入library后,switch语句报错问题

转载请注明出处 http://blog.csdn.net/wei_chong_chong/article/details/50826464

情况是这样的,我在android工程中使用switch语句但是在往工程中导入library后,原工程中的switch语句报错,提示资源ID必须为常量。换句话说就是导入library后,R文件中资源ID不是常数了,

打开工程中的R.java文件你会发现,导入library包后,里面的ID就被更改为非final类型了 public static int buttom_in=0x7f040002;即变成了变量

没有导入之前是public static final int buttom_in=0x7f040002;是常量。(这时你如果移除导入的library,仍然会报错因为R文件内容没有恢复仍然是变量我用的是eclipse,switch还是报错)


具体原因:

android library中不能使用switch-case语句访问资源ID,

解决方案:使用if-else代替switch语句就行了

你可能感兴趣的:(android)