黄油刀(BufferKnife)使用注解声明控件,不再反复 findViewById,使得代码简洁高效。 下面我们手撸一套ioc框架实现黄油刀的效果。
- BindView 注解声明控件对象
 - 自动绑定监听器
 - Gradle 集成
 
- 注解+反射
 
- 注入属性
 - 注入方法
 
- 添加 Gradle 依赖
 
repositories {
    maven { url 'https://dl.bintray.com/ethanmao/ViewJet' 
    }
}
dependencies {
     implementation 'com.ethanmao.open:viewjet:2.0.0'
}
- 在 Activity 中使用
 
 ViewJet.bind(this);
- 使用 BindView 注解
 
- 声明变量
 
   @BindView(R.id.tutu_login)
    private Button toLogin;
- 响应点击事件
 
   @OnClick(R.id.tutu_login)
    public void onClick(View view){
       // Todo Something
    }
