Buffer Knife

Buffer Knife(安卓里面的视图注入库)

项目Github地址
http://jakewharton.github.io/butterknife/

butterKnife是使用生成文件的方式来注解


ButterKnife 优势:
  1. 强大的View绑定和Click事件处理功能,简化代码,提升开发效率

  2. 方便的处理Adapter里的ViewHolder绑定问题

  3. 运行时不会影响APP效率,使用配置方便

  4. 代码清晰,可读性强

**注:**Activity ButterKnife.bind(this);必须在setContentView();之后,且父类bind绑定后,子类不需要再bind


使用方法:
  • build.gradledependencies中加入compile 'com.jakewharton:butterknife:7.0.1'

  • ButterKnife.bind(this); 绑定Activity 必须在setContentView()之后。

  • 绑定view

    @Bind(R.id.hello_world)  
    TextView mHelloWorldTextView;  
    @Bind(R.id.app_name)  
    TextView mAppNameTextView;//view  
  • 绑定资源
    @BindString(R.string.app_name)  
    String appName;//sting  
    @BindColor(R.color.red)  
    int textColor;//颜色  
    @BindDrawable(R.mipmap.ic_launcher)  
    Drawable drawable;//drawble  
    @Bind(R.id.imageview)  
    ImageView mImageView;  
    @Bind(R.id.checkbox)  
    CheckBox mCheckBox;  
    @BindDrawable(R.drawable.selector_image)  
    Drawable selector; 
  • 点击事件的绑定: 不用声明view,不用setOnClickLisener()就可以绑定点击事件
@OnClick(R.id.submit)  
public void submit() {  
  // TODO submit data to server...  
} 
  • 也可以加一个view对象,特定的类型会被自动转换
@OnClick(R.id.submit)  
public void submit(Button button) {  
  // TODO submit data to server...  
} 
  • 还可以批量为多个控件添加为同一个响应函数
@onClick({ R.id.submit1, R.id.submit2, R.id.submit3 })
public void submit(Button button){
  // TODO submit data to server...  
}
  • 对一组View进行统一操作
@Bind({ R.id.first_name, R.id.middle_name, R.id.last_name })  
List<EditText> nameViews; 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值