添加依赖
implementation 'com.jakewharton:butterknife:10.2.3'
annotationProcessor 'com.jakewharton:butterknife-compiler:10.2.3'
使用:
@BindView(R.id.font_dec_img)
ImageView fontDec;
@BindView(R.id.font_add_img)
ImageView fontAdd;
@BindView(R.id.back_rlv)
RelativeLayout back;
@BindView(R.id.clean_rl)
RelativeLayout clean;
@BindView(R.id.save_rl)
RelativeLayout save;
@BindView(R.id.edit_cb)
CheckBox edit;
@BindView(R.id.text_edt)
EditText text;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bind = ButterKnife.bind(this);
}
@OnClick({R.id.font_dec_img,R.id.font_add_img,R.id.edit_cb,R.id.save_rl,R.id.clean_rl,R.id.back_rlv})
public void onViewClick(View view){
switch (view.getId()){
case R.id.font_dec_img:
//字号小
break;
case R.id.font_add_img:
//字号加
break;
case R.id.edit_cb:
//编辑框
break;
case R.id.save_rl:
//保存内容
break;
case R.id.clean_rl:
//清除内容
text.setText("");
break;
case R.id.back_rlv:
//退出软件
finish();
break;
}
}
问题:
最开始引用该依赖只添加了implementation 'com.jakewharton:butterknife:10.2.3' 这一行,然后运行的时候报错了,空指针异常,没有初始化控件的原因,找了好久问题所在,是引用依赖错误或者缺失的问题
annotationProcessor 'com.jakewharton:butterknife-compiler:10.2.3' 将这一行添加进去就可以了