基于android 29API
android中的UI主要是通过xml文件编写,从xml文件到View是通过LayoutInflater。
LayoutInflater通过inflater方法从xml文件转换成View,通过createViewFromTag创建View,在createViewFromTag方法中会调用tryCreateView方法进行三次拦截最终调用系统方法生成View。
其中开发者可以通过mFactory2(通过setFactory2进行赋值 )和mFactory(通过setFactory进行赋值 ) 2个对象对View创建进行拦截,通过Activity的
onCreateView方法对mPrivateFactory对象进行拦截
拦截顺序为:mFactory2--mFactory--mPrivateFactory--系统生成View
当tryCreateView方法没有返回一个View,那么就会由系统生成View