
這個時候就會有疑問了,怎么會這樣,這比例是2:1吧,那么three去哪了?代碼里面明明有 three的啊,還設(shè)置了3的,而1和2的比例也不對耶,1:2:3卻變成了2:1:0,怎么會這樣呢? 答:這里其實沒那么簡單的,還是需要我們計算的,網(wǎng)上給出的算法有幾種,這里就給出筆者 覺得比較容易理解的一種:?step 1:個個都是fill_parent,但是屏幕只有一個啦,那么1 - 3 = - 2 fill_parent?step 2:依次比例是1/6,2/6,3/6?step 3:先到先得,先分給one,計算: 1 - 2 * (1/6) = 2/3 fill_parent 接著到two,計算: 1 - 2 * (2/6) = 1/3 fill_parent 最后到three,計算 1 - 2 * (3/6) = 0 fill_parent?step 4:所以最后的結(jié)果是:one占了兩份,two占了一份,three什么都木有
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?-----------------源自菜鳥教程