我在網格視圖中顯示圖像[約100個圖像],這些圖像將在10秒後刷新。我只想刷新那些對user.how可見的圖像。只能從網格視圖中獲取可見的項目,所以我可以請求服務器僅獲取那些對用戶可見的圖像?網格視圖獲取用戶可見的項目
回答
for(int i = 0; i < GridView.getChildCount(); i++) {
if(GridView.getChildAt(i).isVisible())
// do what you need
}
您應該考慮,這是抽象的代碼片段,以解決您的問題
編輯剛剛說明的方法:在我看來,更好的方法:
for(int visiblePosition = GridView.getFirstVisiblePosition(); visiblePosition <= GridView.getLastVisiblePosition(); visiblePosition++) {
View view = GridView.getChildAt(visiblePosition);
// make something
}
感謝它的工作,實際上當用戶滾動gridview'onScrollStateChanged',並且當狀態轉到'OnScrollListener.SCROLL_STATE_IDLE'的條件。我正在檢查可見的孩子,並只請求來自服務器的這些圖像。 – aditimirani
不客氣) – teoREtik
getChildAt對物品的位置不起作用,但是對於通常不相同的子視圖位置。如果項目多於可見,編輯後的解決方案將引發異常。 – xmen
你可以簡單地調用: gridView.getFirstVisiblePosition() gridView.getLastVisiblePosition()
我做了一件你想做的事情。所以我用它來只抓取需要的圖像。
- 1. 如何獲取網格視圖中可見行的數量?
- 2. 如何使用編程可見或不可見的XML項目(文本視圖,圖像視圖,視頻視圖)
- 3. Android - 獲取視圖的可見區域?
- 4. 如何獲得Recyclerview中項目視圖的可見性?
- 5. 在某個點獲取可見視圖
- 6. 從網格視圖獲取圖像
- 7. 網格視圖項目演示者
- 8. 異步加載網格視圖項目
- 9. 如何獲取ListView項目的視圖?
- 10. 獲取新添加項目的視圖
- 11. 從kendo子網格獲取項目
- 12. 如何使用Win32 api設置樹視圖項目爲可見/不可見
- 13. 如何點擊在RecyclerView的不可見ViewHolder項目後面可見的視圖?
- 14. Xamarin.Forms:獲取列表視圖的所有單元格/項目
- 15. 如何確保WPF數據網格的當前項目可見?
- 16. 列表視圖獲取項目返回
- 17. 從ActionBar獲取項目視圖
- 18. Android:GUI:從列表視圖獲取項目
- 19. 從列表視圖獲取項目[i]
- 20. 如何獲取Android圖庫中可見視圖的索引?
- 21. 網格視圖中的用戶控件
- 22. 如何獲取jCarouselLite中的可見項?
- 23. 如何獲取網格的可見行數?
- 24. 網格視圖內的網格視圖
- 25. 獲取Infinite RecyclerView的中心可見項目值
- 26. NativeScript ListView。獲取第一個可見項目的位置iOS
- 27. Android ListView:獲取可見項目的數據索引
- 28. 網格視圖傳呼機行不可見
- 29. 將訂單#從網格視圖獲取到詳細視圖
- 30. WebContents文件夾在Eclipse項目視圖中不可見
請不要重複相同的問題,如果您有任何新增加的內容,請更新此問題。 – Kev