学习笔记-----ButterKnife

ButterKnife是一个用于Android的View注入框架,简化了findViewById的过程。它支持多种注解,如@BindView、@OnClick等,用于绑定视图和处理事件。本文详细介绍了ButterKnife的使用方法,包括在Fragment和Adapter中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. ButterKnife是一个专注于Android系统的View注入框架。
  2. ButterKnife.bind(this); ≈ 一切findViewById()。
  3. Fragment、Adapter中同样适用,ButterKnife.bind(this,view);
  4. 属性必须是一个常量。
  5. Fragment中需要在onDestroyView()中调用unbind()。
  6. zelezny插件
    • 右键目标View;
    • Generate;
    • Generate ButterKnife Injections;
    • 选择绑定。
  7. 绑定注解
    • @BindView—->绑定一个view;id为一个view 变量
    • @BindViews —-> 绑定多个view;id为一个view的list变量
    • @BindArray—-> 绑定string里面array数组;@BindArray(R.array.city ) String[] citys ;
    • @BindBitmap—->绑定图片资源为Bitmap;@BindBitmap( R.mipmap.wifi ) Bitmap bitmap;
    • @BindBool —->绑定boolean值
    • @BindColor —->绑定color;@BindColor(R.color.colorAccent) int black;
    • @BindDimen —->绑定Dimen;@BindDimen(R.dimen.borth_width) int mBorderWidth;
    • @BindDrawable —-> 绑定Drawable;@BindDrawable(R.drawable.test_pic) Drawable mTestPic;
    • @BindFloat —->绑定float
    • @BindInt —->绑定int
    • @BindString —->绑定一个String id为一个String变量;@BindString( R.string.app_name ) String meg;
  8. 事件注解
    • @OnClick—->点击事件
    • @OnCheckedChanged —->选中,取消选中
    • @OnEditorAction —->软键盘的功能键
    • @OnFocusChange —->焦点改变
    • @OnItemClick item—->被点击(注意这里有坑,如果item里面有Button等这些有点击的控件事件的,需要设置这些控件属性focusable为false)
    • @OnItemLongClick item—->长按(返回真可以拦截onItemClick)
    • @OnItemSelected —->item被选择事件
    • @OnLongClick —->长按事件
    • @OnPageChange —->页面改变事件
    • @OnTextChanged —->EditText里面的文本变化事件
    • @OnTouch —->触摸事件
    • @Optional —->选择性注入,如果当前对象不存在,就会抛出一个异常,为了压制这个异常,可以在变量或者方法上加入一下注解,让注入变成选择性的,如果目标View存在,则注入, 不存在,则什么事情都不做

资料参考:

Android Butterknife(黄油刀) 使用方法总结
github地址

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值