ButterKnife的实现实际上是通过APT技术实现的
官网:http://jakewharton.github.io/butterknife/
GitHub项目地址:https://github.com/JakeWharton/butterknife/
1.在project 的 build.gradle 文件下
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.2'
classpath "io.realm:realm-gradle-plugin:2.1.1"
//配置 apt 供butterknife使用
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
}
}
2:在Module的 build.gradle里配置:
apply plugin: 'com.android.application'
apply plugin: 'com.neenbedankt.android-apt'
android{...}
dependencies {
compile 'com.jakewharton:butterknife:8.4.0'
apt 'com.jakewharton:butterknife-compiler:8.4.0'
}
3:在library使用注意:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0'
}
}
apply plugin: 'com.android.library'
apply plugin: 'com.jakewharton.butterknife'
使用 R2代替R
class ExampleActivity extends Activity {
@BindView(R2.id.user) EditText username;
@BindView(R2.id.pass) EditText password;
...
}