使用 ButterKnife 繫結監聽器

OnClick 監聽器:

@OnClick(R.id.login)
public void login(View view) {
  // Additional logic
}

偵聽器方法的所有引數都是可選的:

@OnClick(R.id.login)
public void login() {
   // Additional logic
}

具體型別將自動投放:

@OnClick(R.id.submit)
public void sayHi(Button button) {
  button.setText("Hello!");
}

用於公共事件處理的單個繫結中的多個 ID:

@OnClick({ R.id.door1, R.id.door2, R.id.door3 })
public void pickDoor(DoorView door) {
  if (door.hasPrizeBehind()) {
    Toast.makeText(this, "You win!", LENGTH_SHORT).show();
  } else {
    Toast.makeText(this, "Try again", LENGTH_SHORT).show();
  }
}

通過不指定 ID,自定義檢視可以繫結到自己的偵聽器:

public class CustomButton extends Button {
  @OnClick
  public void onClick() {
    // TODO 
  }
}