一、概述
在之前的一篇文章中,我们用反射实现了ButterKnife。但使用反射实现ButterKnife性能会受损。这一节我们使用AnnotationProcessor来实现一个ButterKnife(仅实现bindView作参考),在代码编译之前生成辅助类来帮助我们去掉繁琐的findViewById操作,提高我们的开发效率,同时这个方案与性能五损耗。
下面我们看看具体怎样实现。
二、案例实现
想要学会这个小例子,首先读者需要具备以下几个条件:
1.熟悉java的反射机制(在bindView的时候会用到反射)
2.熟悉自定义注解的用法
3.熟悉AnnotationProcessor(编译时注解处理工具)
4.熟悉JavaPoet(用于生成java源文件的工具类,辅助library生成辅助类)
ps:默认以上四点大家都懂了,嘿嘿