開始項目開發當然要想好用什么框架,別人造好的輪子當然好好利用了,第一個是ButterKnife
ButterKnife 有哪些優勢?
具體優勢:1.強大的View綁定和Click事件處理功能,簡化代碼,提升開發效率
2.方便的處理Adapter里的ViewHolder綁定問題
3.運行時不會影響APP效率,使用配置方便
4.代碼清晰,可讀性強
基本使用3步(非常簡單)
1在項目的project 的build.gredle 文件中的dependencies標簽下添加。
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
2.在app模塊的build.gradle中添加:
apply plugin: 'com.neenbedankt.android-apt'//增加這一句 compile 'com.jakewharton:butterknife:8.1.0'//增加這一句 apt 'com.jakewharton:butterknife-compiler:8.1.0'//增加這一句
3.最后一步使用(圖上常用的方法都給出了,非常簡單,這樣寫代碼方便多了)
public class MainActivity extends AppCompatActivity { //綁定TextView @BindView(R.id.test) TextView test;// 注意: 的修飾類型不能是:private 或者 static 。 否則會報錯:錯誤: @BindView fields must not be private or static //綁定string 字符串 @BindString(R.string.app_name) String mString; //綁定ImageView 控件 @BindView(R.id.iv_test) ImageView iv_test; //綁定Bitmap 資源 @BindBitmap(R.mipmap.ic_launcher) Bitmap mBitmap; @BindColor(R.color.colorAccent) int black; //綁定一個顏色值 @OnClick(R.id.test) //設置一個點擊事件 public void showToast() { Toast.makeText(this, "is a click", Toast.LENGTH_SHORT).show(); } @OnLongClick(R.id.test) //給 設置一個長按事件 public boolean showToast2() { Toast.makeText(this, "is a long click", Toast.LENGTH_SHORT).show(); return true; } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ButterKnife.bind(this); test.setText(mString); test.setTextColor(black); iv_test.setImageBitmap(mBitmap); // }}
4.最后,還有更方便的大殺器zelezny ,直接安裝就可以了
然后使用時候
真心非常簡單,提高開發效率的神奇