今天,我们来讲一讲ButterKnife注入框架,众所周知,Android开发时,如果我们需要对一个xml中的控件进行使用的话,那么就必须去调用findViewById方法,我说一下我对这个方法的感受,一开始接触android的时候,用的非常爽,在xml中写好控件,在Activity中直接调用这么一个简单的方法就ok了;但是随着开发的一步步加深,一个页面中需要展现的控件越来越多,这就需要我们在页面中不断的去敲重复的代码,这部分代码还封装不了,所以后来就会越用越烦。所以ButterKnife就应运而生;
1.使用方法:
(1)在dependencies中加入这句话,导入butterknife依赖;
compile 'com.jakewharton:butterknife:7.0.1'
(2)在需要的控件上加入需要的注解:
@OnClick(R.id.btn_login) void login(){ }
这就在id为btn_login的控件上加入了点击事件,是不是非常简单
(3)最后,在Activity的onCreate()中调用
ButterKnife.bind(this);
2.实现原理:
讲到ButterKnife的实现原理,就不得不强调一句话,ButterKnife和其他的注入框架是不同的,其他的注入框架基本上都是通过注解+反射的机制去实现的,而ButterKnife不是,它是通过Java注解处理技术在编译时以动态注入的方式去实现,这样做比其他的框架性能会更好;
直接上源码,我们从ButterKnife.bind(this);方法看:

本文详细介绍了Android开发中的ButterKnife注入框架,旨在减少 findViewById 的繁琐操作。使用方法包括添加依赖、添加注解以及在Activity的onCreate中调用。ButterKnife通过Java注解处理技术在编译时动态注入,性能优于基于反射的框架。其工作原理主要包括扫描Java代码中的注解,生成ViewBinder类,并通过动态注入将注解转换为Java代码。
最低0.47元/天 解锁文章
574

被折叠的 条评论
为什么被折叠?



