Android 模块化开发switch-case中用资源ID报错

原文链接:http://www.jianshu.com/p/73692d1ad874

今天在项目的一个模块中写click事件时,发现用switch-case会报错:"Resource IDs cannot be used in Android Library..."

根据错误提示,大意是在Library中Resource IDs不是常量。打开Library的R文件一看:

public final class R {
    public static final class anim {
        public static int abc_fade_in = 0x7f010001;
        public static int abc_fade_out = 0x7f010002;
        ...
    }
    ...
}

结果发现还真是这样,所有int都没有final修饰。

解决办法也简单,就是把switch-case替换成if-else。

这里再分享一个快捷键,可以一键将switch-case转换成if-else的形式:

  1. 先将光标移到switch的前面
  2. 然后用option + 回车键,就可以转换为if-else了

                       欢迎关注我的微信公众号,和我一起每天进步一点点!
2196721-b6a8abf111a5f517.jpg
AntDream
展开阅读全文

没有更多推荐了,返回首页