Android library中使用switch-case处理点击事件报错

为了实现产品奇葩的需求,有时候不得不修改依赖库,就在刚刚我在某一个library中添加了一些点击事件,有截图为证:



竟然报错了,Constant expression required 需要常量表达式,我.... R.id.获取到的难道不是常量么?一探究竟,我们先看看错误的具体解释:



大致意思呢就是:在Android library modules中资源ID不能在switch中使用,自从SDK工具r14之后在library项目中资源ID就不是final的了,意味着在library编写代码的时候不能将IDs作为常量使用了。
鉴于这种情况,只能使用 if-else 来处理了,用文章记录一下,加深记忆吧

你可能感兴趣的:(Android library中使用switch-case处理点击事件报错)