Android 依賴注入 ButterKnife 基本使用 - 漸行漸遠漸無聲 - 博客園
http://www.cnblogs.com/fansen/p/5653887.html
ButterKnife使用詳解 - ITjianghuxiaoxiong的專欄 - 博客頻道 - CSDN.NET
http://blog.csdn.net/itjianghuxiaoxiong/article/details/50177549
JakeWharton/butterknife: Bind Android views and callbacks to fields and methods.
https://github.com/JakeWharton/butterknife
avast/android-butterknife-zelezny: Android Studio plug-in for generating ButterKnife injections from selected layout XML.
https://github.com/avast/android-butterknife-zelezny
Sample Code:
public class MainActivity extends AppCompatActivity { @BindView(R.id.edit_name) EditText userName; @BindView(R.id.edit_pass) EditText password; @BindView(R.id.tv_hint) TextView hintTxt; @BindView(R.id.btn_confirm) Button confirmBtn; @BindView(R.id.checkbox) CheckBox checkBox; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // setContentView(R.layout.activity_main); setContentView(R.layout.mylayout); ButterKnife.bind(this); } @OnClick(R.id.btn_confirm) public void onClick() { // or submit() ... Toast.makeText(this, "信息提交中!", Toast.LENGTH_SHORT).show(); if ( TextUtils.isEmpty(userName.getText()) || TextUtils.isEmpty(password.getText()) ) { hintTxt.setText("用戶名或密碼為空"); hintTxt.setTextColor(Color.RED); hintTxt.setVisibility(View.VISIBLE); } } // onCheckedChanged impl method 1 @OnCheckedChanged(R.id.checkbox) public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (isChecked) { //選擇狀態 顯示明文--設置為可見的密碼 password.setTransformationMethod( HideReturnsTransformationMethod.getInstance() ); } else { //默認狀態顯示密碼為不可見的黑點 password.setTransformationMethod( PasswordTransformationMethod.getInstance() ); } } // onCheckedChanged impl method 2 public void onCheckedChanged2(CompoundButton buttonView, boolean isChecked) { if (isChecked) { //選擇狀態 顯示明文--設置為可見的密碼 password.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD); } else { //默認狀態顯示密碼為不可見的黑點 password.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD); } } }
Zelezny插件的使用
在AndroidStudio->File->Settings->Plugins->搜索Zelezny下載添加就行 ,可以快速生成對應組件的實例對象,不用手動寫。使用時,在要導入注解的Activity 或 Fragment 或 ViewHolder的layout資源代碼上,右鍵——>Generate——Generate ButterKnife Injections,然后就出現如圖的選擇框。(此動態圖來自官網)