真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Android中g(shù)etWidth()和getMeasuredWidth()有什么不同

本篇文章為大家展示了Android中g(shù)etWidth()和getMeasuredWidth()有什么不同,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。

創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供石城網(wǎng)站建設(shè)、石城做網(wǎng)站、石城網(wǎng)站設(shè)計(jì)、石城網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、石城企業(yè)網(wǎng)站模板建站服務(wù),十多年石城做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

1.getMeasuredWidth

Android中g(shù)etWidth()和getMeasuredWidth()有什么不同

從源碼上來(lái)看,getMeasuredWidth()獲取的是mMeasuredWidth的這個(gè)值。這個(gè)值是一個(gè)8位的十六進(jìn)制的數(shù)字,高兩位表示的是這個(gè)measure階段的Mode的值,具體可以查看MeasureSpec的原理。這里mMeasuredWidth & MEASURED_SIZE_MASK表示的是測(cè)量階段結(jié)束之后,view真實(shí)的值。而且這個(gè)值會(huì)在調(diào)用了setMeasuredDimensionRaw()函數(shù)之后會(huì)被設(shè)置。所以getMeasuredWidth()的值是measure階段結(jié)束之后得到的view的原始的值。

2.getWidth()

Android中g(shù)etWidth()和getMeasuredWidth()有什么不同

那么問(wèn)題來(lái)了,mRight和mLeft是什么值,是在什么時(shí)候被設(shè)置的。我們?cè)倏磍ayout階段的源碼:

Android中g(shù)etWidth()和getMeasuredWidth()有什么不同

在layout階段會(huì)去調(diào)用setOpticalFrame()或者調(diào)用setFrame()方法,從源碼中可知setOpticalFrame()方法,最終還是調(diào)用的setFrame()方法。

Android中g(shù)etWidth()和getMeasuredWidth()有什么不同

所以最終的mLeft和mRight的值是在setFrame()方法中被設(shè)置的。而且這些mLeft,mRight代表了view最終顯示在界面中的大小。

3.下面我們自定義一個(gè)簡(jiǎn)單的ViewGroup,在layout階段改變left,right的值,觀察getMeasuredWidth()和getWidth()方法之間的區(qū)別。

Android中g(shù)etWidth()和getMeasuredWidth()有什么不同

Android中g(shù)etWidth()和getMeasuredWidth()有什么不同

Android中g(shù)etWidth()和getMeasuredWidth()有什么不同

上述內(nèi)容就是Android中g(shù)etWidth()和getMeasuredWidth()有什么不同,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


文章題目:Android中g(shù)etWidth()和getMeasuredWidth()有什么不同
URL網(wǎng)址:http://weahome.cn/article/igpchi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部