在我们使用android studio 通常会把常用的代码,新建成module在library中引入butterknife的依赖:
compile 'com.jakewharton:butterknife:8.4.0'
但是在module 使用的时候会出现以下问题:
造成这个的原因就是在library里R.id.xxx不再是final类型了,也就不是常量了变成可变的,而注入是需要传入常量。
解决方法:
1.在项目的build.gradle下面添加
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0'
然后在module的build.gradle添加:
apply plugin: 'com.neenbedankt.android-apt'
apply plugin: 'com.jakewharton.butterknife'
library的build.gradle添加:
compile 'com.jakewharton:butterknife:8.4.0'
然后在我们的activity中:
注意要使用R2 不要使用R 这样就可以使用啦。
使用中如果有问题欢迎大家 Q我。