android-opensource-library-56/android-opensource-library-56 — pull request #3 by sys1yagi (2013-12-09 15:20:49+00:00)
Title: Added Butter Knife 4.0.1 sample code.

Butter Knife 4.0.1のサンプルコードを追加しました。
ViewsクラスがButterKnifeクラスに置き換わったほか、新しいアノテーションが追加されています。

```
//既存
@OnClick

//追加
@OnCheckedChanged
@OnEditorAction
@OnFocusChanged
@OnItemClick
@OnItemLongClick
@OnLongClick
@Optional
```

#### Butter Knife 4.0.1のバグ

ListViewで利用できる以下のアノテーションを付加した場合、コンパイルできないコードが生成されます。

```
@OnItemClick
@OnItemLongClick
```

手動で修正して使ってもよいですが、コンパイルの度にエラーとなってしまうので、修正を待った方がよいでしょう。

@OnItemClickを使った場合以下のようなコードが生成されます。1行目のandroid.widget.AdapterView<T>が誤りです。

```java
((android.widget.AdapterView) view).setOnItemClickListener(
new android.widget.AdapterView.OnItemClickListener() {
@Override public void onItemClick(
android.widget.AdapterView p0,
android.view.View p1,
int p2,
long p3
) {
target.itemClick(p0, p1, p2, p3);
}
});
```

以下のような形に書き換えればコンパイルが通ります。

```java
((android.widget.AdapterView) view).setOnItemClickListener(
new android.widget.AdapterView.OnItemClickListener() {
@Override public void onItemClick(
android.widget.AdapterView p0,
android.view.View p1,
int p2,
long p3
) {
target.itemClick(p0, p1, p2, p3);
}
});
```