ButterKnife是一个专注于Android系统的View注入框架,以前总是要写很多findViewById来找到View对象,有了ButterKnife可以很轻松的省去这些步骤。是大神JakeWharton的力作,目前使用很广。最重要的一点,使用ButterKnife对性能基本没有损失,因为ButterKnife用到的注解并不是在运行时反射的,而是在编译的时候生成新的class。项目集成起来也是特别方便,使用起来也是特别简单。
第一步写一个Annotation定义我们需要去@出来的方法
写点击事件 和 查找ID的@
@Retention(RetentionPolicy.RUNTIME)//运行时加载 节省资源
@Target(ElementType.FIELD)//变量
public @interface InjectView {
int ID();
}
@Retention(RetentionPolicy.RUNTIME) // 运行时加载 节省资源
@Target(ElementType.METHOD)//方法
public @interface OnClick {
int value();//传递要点击的布局id
}
activity页面重写两个方法去写出底层代码实现逻辑完成查找ID 及 点击事件
public class ViewUtils {
public static void bind(Activity activity){
bindFeild(activity);//查找ID
bindOnClick