ButterKnife 更新了,增加了资源绑定,并且将 compiler 分离了出来,引用方式做了改变。
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
}
}
apply plugin: 'com.neenbedankt.android-apt'
dependencies {
compile 'com.jakewharton:butterknife:8.0.1'
apt 'com.jakewharton:butterknife-compiler:8.0.1'
}
Change Log
==========
Version 8.0.1 *(2016-04-27)*
----------------------------
* Fix: ProGuard rules now prevent obfuscation of only types which reference ButterKnife annotations.
* Eliminate some of the generated machinery when referenced from `final` types.
Version 8.0.0 *(2016-04-25)*
----------------------------
* `@Bind` becomes `@BindView` and `@BindViews` (one view and multiple views, respectively).
* Calls to `bind` now return an `Unbinder` instance which can be used to `null` references. This replaces
the `unbind` API and adds support for being able to clear listeners.
* New: `@BindArray` binds `String`, `CharSequence`, and `int` arrays and `TypeArray` to fields.
* New: `@BindBitmap` binds `Bitmap` instances from resources to fields.
* `@BindDrawable` now supports a `tint` field which accepts a theme attribute.
* The runtime and compiler are now split into two artifacts.
```groovy
compile 'com.jakewharton:butterknife:8.0.0'
apt 'com.jakewharton:butterknife-compiler:8.0.0'
```
* New: `apply` overloads which accept a single view and arrays of views.
* ProGuard rules now ship inside of the library and are included automatically.
* `@Optional` annotation is back to mark methods as being optional.