上次主要总结了一下ViewBinding的使用方式,基本涵盖了常用的场景,后续遇到其他场景我会陆续的补充。
这次打算总结一下实现的原理,保证自己知其所以然。
1、如何实现view绑定
通过代码来分析:
- 生成的文件代码例子如下:
public final class ActivityViewBindingTestBinding implements ViewBinding {
@NonNull
private final LinearLayout rootView;
@NonNull
public final RecyclerView rcv;
@NonNull
public final VbCustomViewTest viewCustom;
//私有化的构造,渲染通过下面两个inflate方法和一个bind方法来搞定
private ActivityViewBindingTestBinding(@NonNull LinearLayout rootView, @NonNull RecyclerView rcv,
@NonNull VbCustomViewTest viewCustom) {
this.rootView = rootView;
this.rcv = rcv;