最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(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é):的評論 (共 條)

分享到微博請遵守國家法律
云梦县| 沭阳县| 德兴市| 安塞县| 兰州市| 鄂温| 安塞县| 河北省| 子洲县| 客服| 汉寿县| 桦甸市| 常宁市| 岚皋县| 鹤壁市| 永年县| 化德县| 邵东县| 临安市| 驻马店市| 潜江市| 济宁市| 成武县| 永川市| 彰化县| 茌平县| 河西区| 曲沃县| 保山市| 永安市| 融水| 衡南县| 衡东县| 元朗区| 伊吾县| 鞍山市| 曲周县| 绥化市| 文山县| 班戈县| 彩票|