Android Butter Knife 框架

Android Butter Knife 在项目中的配置及插件安装请见AS 中安装插件及常用插件

ButterKnife的优势

  • 避免过多的findViewById的操作,直接对view进行注解绑定点击事件
  • 因为是编译期的注解,在运行时不会影响App的效率,使用配置方便
  • 方便的处理Adapter里的ViewHolder绑定问题
  • 可以简化代码书写,逻辑清晰

ButterKnife的使用

由于每次在Acitivity中都要进行ButterKnife的bind操作,所以建议将bind操作写到BaseActivity中,绑定Activity 必须在setContentView之后,代码如下:

public abstract class BaseActivity extends Activity {
    private Unbinder unbinder;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(getContentView());
        unbinder = ButterKnife.bind(this);

    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        unbinder.unbind();
    }
    protected abstract int getContentView();

}

而其他Activity 只需继承BaseActivity,实现getContentView方法,在getContentView返回Activity的布局文件即可。

具体使用方法可参看Android Butter Knife 框架——最好用的View注入

ButterKnife使用心得

  • ButterKnife.bind()的调用在Activity中必须在setContentView之后
  • 属性布局不能用private or static 修饰,否则会报错
  • 可以写一个BaseActivity来调用ButterKnife.bind()方法,子类则不需要再进行bind操作
  • 在8.4中ButterKnife移除了unBind方法,使用ButterKnife.bind(this)返回一个Unbinder的引用,通过Unbinder的unbind()方法进行解除绑定

参考连接:

http://https://www.jianshu.com/p/9ad21e548b69

https://www.jianshu.com/p/83919fca8d84

转载于:https://my.oschina.net/fltsp/blog/1601294

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值