Android ButterKnife基础篇

参考

Github

准备工作

在项目的build.gradle文件中添加

compileOptions {
    
    
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
}
api 'com.jakewharton:butterknife:8.4.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'

官方的版本已经是10以上了,但我们用起来不太合适,可以把版本下调。

如果我们要在library中添加的话单靠上面的集成方法是不行的,还需要在项目中的build.gradle文件中加入:

annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'

安装插件

Android ButterKniffe Plugin Plus

初始化

Activity

@Override
protected void onCreate(Bundle savedInstanceState) {
    
    
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    ButterKnife.bind(this);
}

Fragment

Unbinder unbinder; 

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
    
    
	  View inflate = inflater.inflate(R.layout.fragment, container, false);
      unbinder = ButterKnife.bind(this, inflate);
      return inflate;
}

@Override
public void onDestroyView() {
    
    
  super.onDestroyView();
  unbinder.unbind();
}

Adapter

static class ViewHolder {
    
      
  public ViewHolder(View view) {
    
      
      ButterKnife.bind(this, view);  
  }  
}  

由于Fragment的生命周期不同于Activity,当在CreateView方法中绑定视图时,需要在onDestoryView中把对应的视图设置为null,这时需要解绑ButterKnife。

使用

在这里插入图片描述

选中布局文件右键或快捷键弹出

在这里插入图片描述
选择最后一项即可使用。

猜你喜欢

转载自blog.csdn.net/m0_48440239/article/details/114688016