五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

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

自定義ViewGroup問題解決

2023-06-21 17:36 作者:便宜酒  | 我要投稿

·為什么測量父要先測量子?

父需要確定給不給得起。


·為什么測量子需要父的測量規(guī)格?measureChild(child, widthMeasureSpec, heightMeasureSpec);

父布局分三種:知道多大,很大但不知道多大,還沒分配。相應(yīng)的子控件也分三種:知道要多少(子控件一樣大),有多少全給,控件多大就要多少(子控件不一樣大)。


·layoutParams是什么?

layoutParams代表xml里設(shè)置的寬高,但它不是int,API里有相應(yīng)方法轉(zhuǎn)化為int。

?

·getMeasuredWidth和getWidth的區(qū)別?

前者在measure()結(jié)束后就有,后者是布局結(jié)束后才有


·寬和高的測量模式和wrap、match、具體值是什么關(guān)系?

width:

Match-exactly-1080

Wrap-at_most-1080

100dp-exactly-300px

height:

Match-unspecified-0

Wrap-unspecified-0

100dp-exactly-300px


·對子控件設(shè)置ViewGroup.MarginLayoutParams layoutParams = new ViewGroup.MarginLayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);

和xml里對子控件的設(shè)置的是什么關(guān)系?認(rèn)哪個?

認(rèn)java代碼。條目樣式xml里的最外層設(shè)置的大小和間距是沒用的,它相當(dāng)于畫布,條目真正的大小、背景最好從第二層開始,大小會被java覆蓋,但是間距是直接不認(rèn),java不設(shè)置那就會默認(rèn)0?

·總結(jié):大小和間距都只認(rèn)優(yōu)先java設(shè)的,寫java的時候可以照著xml寫

·上面可以看到自定義view繼承的是ViewGroup,必須至少雙參構(gòu)造,即必須用代碼設(shè)置并傳入子控件的layoutParam。繼承LinearLayout可以單參構(gòu)造,認(rèn)xml設(shè)置的子控件大小,但是不認(rèn)xml里的間距,所以意義不大。


·注意事項:在自定義布局的代碼中,getLayoutParamchild.getLayoutParam分別獲取的是父與子的布局參數(shù)。





自定義ViewGroup問題解決的評論 (共 條)

分享到微博請遵守國家法律
门头沟区| 新巴尔虎左旗| 余庆县| 仙游县| 二手房| 双鸭山市| 沂源县| 汝州市| 泸州市| 黄陵县| 新和县| 白沙| 阿合奇县| 和硕县| 托克逊县| 芷江| 崇信县| 梁平县| 寻乌县| 牙克石市| 博乐市| 六盘水市| 衡山县| 宜阳县| 台湾省| 贵港市| 宁波市| 阿图什市| 奉化市| 巍山| 大方县| 舒城县| 台北市| 深州市| 隆安县| 东至县| 内乡县| 卓尼县| 华安县| 元江| 保康县|