瀑布流StaggeredGridView 下拉重新整理

2021-09-23 21:00:20 字數 934 閱讀 6711

1.專案中用到了瀑布流,之前用的是pinterestlikeadapterview這個控制項  然後上拉載入更多跟下拉重新整理用的是xlistview ,但是載入更多或者下拉重新整理的時候閃屏,對使用者體驗很不好,      於是又從網上找了一些demo,最後決定用staggeredgridview控制項

3.任何問題出現都是由原因的,跟蹤原始碼,發現問題所在。

1).在staggeredgridview

類trackmotionscroll方法中有對某個boolean型別值進行判斷,發現loadlock為false的時候,載入更多函式才會呼叫。

原始碼如下:

if(!loadlock)   

2).在更新介面卡的時候會判斷是否有更新資料,有更新資料loadlock才會設定成false.否則一直是true,會導致一直呼叫不了。

**在staggeredgridview

類中內部類

adapterdatasetobserver類的

onchanged方法中,**太多我就不貼出來了。

4.進行解決

1).在staggeredgridview類中增加了兩個方法,隱藏底部跟現實底部

public

void

hidefooterview()  

}  public

void

showfooterview()  

2).載入更多或者下拉重新整理的時候判斷是否是最後一頁,最後一頁的話隱藏底部   否則顯示底部

if(page==

3)else  

效果圖如下:

關於瀑布流

鑑於現今瀑布流的流行,上次面試的時候又遇到了這個問題,可我確實沒有實現過,一時問起確實只知道用float left的方式。1.固定列寬和列數,列設定float left,乙個列就是乙個內容塊,載入內容就選擇載入到各列中 2.使用css3的多列布局 前兩種方式比較簡單,而所謂最大的缺陷也就是列數目已確...

瀑布流函式

在jquery物件後面新增瀑布流函式 function 其他行 else 其他行 top 每列中的最小值 即最低的那一列 val css 修改高度陣列 最小高度 最小高度 當前子元素高度 arrheight minindex minheight height 查詢高度 最大值 var maxinde...

iOS CollectionView瀑布流框架搭建

collectionview實現以下效果.思路 先說一下這個效果的實現思路,首先需要確定該瀑布流有多少列,然後需要確定每個cell 的高度,用乙個陣列記錄下每一列的已新增上去的cell的高度和.然後新增下乙個cell的時候找出所有列中高度最小的列,再新增上去.例如 在該例子中,總共有兩列,當新增完第...