Library中使用butterknife
library中build.gradle文件
apply plugin: 'com.android.library'
apply plugin: 'com.jakewharton.butterknife'
implementation 'com.jakewharton:butterknife:8.8.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
工程build.gradle文件配置
buildscript {
repositories {
google()
jcenter()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
classpath "com.jakewharton:butterknife-gradle-plugin:8.4.0"
}
}
classpath "com.jakewharton:butterknife-gradle-plugin:8.4.0" 注意这一句,版本用的8.4.0,而不是8.8.1。使用8.8.1编译无法通过,据说是Android Studio3.0与butterknife的冲突。详情参见
然后就可以在Library中使用butterknife了
@BindView(R2.id.lele)
TextView lele;
不过R要改为R2,其它用法和APP中差不多
特别注意library中switch-case的使用,在library中是不能使用switch- case 找id的,解决方法就是用if-else代替。
网友评论