组件化爬坑---ButterKnife的使用

想必大家都知道在组件化开发中如何使用ButterKnife,简单说明如下:

1.在最外层的build.gradle中引入butterKnife插件:

2.在对应的module下的build.gradle的dependencies中引入对应的butterknife:

3.在library中使用控件绑定时,使用R2替代R:

一切看起来貌似很正常,但我在组件化开发中却遇到了在library模式下,R2可以找到,但切换到Application模式下R2就找不到了,之前想着如果这样的化,岂不是在切换library与Application之前要做到R与R2动态切换?经过一段时间的懵逼后通过分析发现,R与R2都是通过编译后生成的资源类,其位置位于对应module下的/build/generated/source/r/debug/($packageName)下。注意!!!,如果在步骤1中你引入的gradle插件是例如**alpha**版本的话,可能出现当library切换到Application模式编译后R2自动清除的情况,这样你的项目就找不到R2资源了。

另外,在library中使用switch语句时,虽然用R2不会报错,但是程序启动后,你会发现对应的点击事件无效!!!,所以必须使用if语句并且用R来定位资源。

仅将组件化开发中遇到的问题记录下来,避免更多的人走弯路。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fastsy

打赏一份隆江猪脚饭吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值