android開發中的View.measure方法報空情況

measure方法就和它的翻譯一樣,測量,測量一個控件的寬度和高度,通常情況調用measure之後可以通過getMeasuredHeight和getMeasuredWidth方法來獲取寬度和高度,當控件中間包含listview等適配器填充的控件就不能獲取到正確的寬度和高度,對這些控件測量得到的是0。

調用方法

view.measure(
MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED),
MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));

但是有時候在調用方法的時候會報空,但是我們打印出來view不是空的,如果看佈局的話會發現這個佈局是RelativeLayout控件,這應該是android sdk中的一個bug,而其他佈局目前沒有發現報空的情況。遇到這種情況我的解決方法是使用其他佈局來完成需要的效果,如果大家有其他的方法和找到出現空的原因可以告訴我


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章