Android源码完全解析——View的Measure过程
生活随笔
收集整理的這篇文章主要介紹了
Android源码完全解析——View的Measure过程
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在Android中,Veiw從內存中到呈現在UI界面上需要經過measure(測量)、layout(布局)、draw(繪制)這樣一個過程。為什么需要measure過程?因為在Android中View有自適應尺寸的機制,在用自適應尺寸來定義View大小的時候,View的真實尺寸還不能確定,這時候就需要根據View的寬高匹配規則,經過計算,得到具體的像素值,measure過程就是干這件事。
本文將從源碼角度解析View的measure過程,這其中會涉及某些關鍵類以及關鍵方法。
文章干貨很長 文末有福利!!
MeasureSpec
MeasureSpec封裝了父布局傳遞給子布局的布局要求,它通過一個32位int類型的值來表示,該值包含了兩種信息,高兩位表示的是SpecMode(測量模式),低30位表示的是SpecSize(測量的具體大小)。下面通過注釋的方式來分析來類:
/**總結
以上是生活随笔為你收集整理的Android源码完全解析——View的Measure过程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 分界线----------
- 下一篇: HashMap线程不安全的原因和解决方案