LayoutInflater源碼分析

思考:在adapter中獲取ItemView的時(shí)候 會(huì)經(jīng)常用到LayoutInflater.from(context).inflate(R.layout.item_recycler,parent,false);但是最后參數(shù)傳true或者false是讓人困擾的,知道傳false 因?yàn)閭鱰rue會(huì)報(bào)錯(cuò)。。。所以今天就來分析一下吧

問題示例

第一個(gè)方法 :View.inflate(mContext,R.layout.activity_main,null);源碼流程

方法一

第二個(gè)方法 :LayoutInflater.from(mContext).inflate(R.layout.activity_main,parent);

方法二

第三個(gè)方法 :LayoutInflater.from(mContext).inflate(R.layout.activity_main,parent,false);

可以看到 前兩個(gè)方法最終還是走到第三天方法中,只是缺少的參數(shù)代碼填充了


方法三

后面看看具體核心算法:inflate(parser, root, attachToRoot);


核心

講空viewGroup添加成一個(gè)有子view的方法?rInflateChildren(parser,temp,attrs, true);

那么一個(gè)個(gè)view又是如何生成的呢

解析完成啦。。。。還是蠻簡單的嘛。。。。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容