国产三级农村妇女在线,国产精品毛片a∨一区二区三区,国产乱子伦视频大全,国产精品色拉拉,国产欧美日韩一区二区三区,

首頁 > 技術(shù) > IOS開發(fā)

php短視頻源碼之瀑布流分割線左右間距問題及解決代碼

IOS開發(fā) 2023-02-16 22:21:11

下面展示一下非瀑布流的item布局情況,每個item的高度都是一樣的,所以
他的index就是左右左右,position所對應(yīng)的itemView就是準(zhǔn)確的,
左0,右1,左2,右3,以此類推…
這時候我們可以用下面代碼即可成功設(shè)置分割線。

/**

* 第一列設(shè)置左邊距為space,右邊距為space/2 (第二列反之)

*/

if (parent.getChildLayoutPosition(view) % 2 == 0) {

outRect.left = space;

outRect.right = space / 2;

} else {

outRect.left = space / 2;

outRect.right = space;

}

瀑布流的position是根據(jù)列的高度哪個小而來加載下一個position在哪里,
上面瀑布流圖我們可以看到,左0,右1 之后,2到右邊了,那是因為
第二列的高度小于第一列的高度,所以就加載到第二列,以此類推,
下面的高度可以說就是隨機(jī)展示的,誰也不知道接下來要怎么判斷分割線,
所以用上面的那些代碼是行不通的,
大招來了,我們可以通過StaggeredGridLayoutManager.LayoutParams
里的getSpanIndex()來判斷,這個方法不管你高度怎樣,
他都是左右左右開始排列的,如下代碼。

StaggeredGridLayoutManager.LayoutParams params = (StaggeredGridLayoutManager.LayoutParams) view.getLayoutParams();
/**
* 根據(jù)params.getSpanIndex()來判斷左右邊確定分割線
* 第一列設(shè)置左邊距為space,右邊距為space/2 (第二列反之)

*/

if (params.getSpanIndex() % 2 == 0) {

outRect.left = space;

outRect.right = space / 2;

} else {

outRect.left = space / 2;

outRect.right = space;

}

到此這篇關(guān)于php短視頻源碼之瀑布流分割線左右間距問題及解決代碼的文章就介紹到這了,更多相關(guān)php短視頻源碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

TAg

加載中~

本網(wǎng)站LOGO受版權(quán)及商標(biāo)保護(hù),版權(quán)登記號:國作登字-2022-F-10126915,未經(jīng)湖南木星科技官方許可,嚴(yán)禁使用。
Copyright ? 2012-2022 湖南木星科技有限公司(木星網(wǎng))版權(quán)所有
轉(zhuǎn)載內(nèi)容版權(quán)歸作者及來源網(wǎng)站所有,本站原創(chuàng)內(nèi)容轉(zhuǎn)載請注明來源,商業(yè)媒體及紙媒請先聯(lián)系:aishangyiwan@126.com

工信部備案號:湘ICP備19012813號-5