国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

DEVLOG 9.10(二) 關(guān)于自定義View的一些問題總結(jié):

2021-09-10 20:08 作者:房頂上的鋁皮水塔  | 我要投稿

問題記錄:

  1. View支持wrap_content:?

    自定義View如果繼承View時,如果不去實現(xiàn)onMeasure處理wrap_content,則當(dāng)這個View設(shè)置了wrap_content時,View的長度和父容器中可用長度相同,而且測量模式為AT_MOST。推導(dǎo)

    1. View#onMeasure會調(diào)用View#getDefaultSize,里面會指定View的specSize 為傳過來的MeasureSpec。

    2. 這個MeasureSpec由ViewGroup決定。通過ViewGroup#getChildMeasureSpec可以推導(dǎo)出一張表,可以得出結(jié)論。


1.1 . 怎么處理?

思路:在onMeasure中獲取Image(假設(shè)想wrap_content bitmap)的寬高,然后檢查width和height的LayoutParams屬性,如果是wrap_content,設(shè)置為從bitmap中拿到的大?。环駝t設(shè)置為傳入的測量的大小。


可以參考Android開發(fā)藝術(shù)探索+這篇博客

https://blog.csdn.net/carson_ho/article/details/62037760


2. 完成你的View的時候?qū)崿F(xiàn)padding

padding表示【填料】和margin不同,通俗的理解上margin是外邊距,padding是內(nèi)邊距。繼承自View和ViewGroup的自定義空間肯定沒有實現(xiàn)padding的處理。畢竟實現(xiàn)MeasureSpec的時候計算了LayoutParams,里面就有Margin計算。這個實現(xiàn)也不難,View#getPaddingxxxx獲取padding,減小width和height就行【因為內(nèi)部被填充了,大小減小了】。


今天就這樣~


DEVLOG 9.10(二) 關(guān)于自定義View的一些問題總結(jié):的評論 (共 條)

分享到微博請遵守國家法律
开平市| 临朐县| 奉贤区| 江都市| 南漳县| 马尔康县| 玉门市| 湘潭县| 兴业县| 同江市| 白银市| 余干县| 沙河市| 长兴县| 开鲁县| 金秀| 华宁县| 洛浦县| 楚雄市| 达拉特旗| 西乌珠穆沁旗| 宜君县| 望城县| 合肥市| 长沙市| 阿勒泰市| 崇文区| 科尔| 屏山县| 西林县| 江西省| 泌阳县| 马公市| 嫩江县| 新绛县| 游戏| 汉中市| 灵山县| 金湖县| 朝阳区| 遂昌县|