React Native中 FlatList動態吸頂 stickyHeaderIndices 安卓上白屏處理


頁面結構如下圖所示

場景描述:切換左側tab的時候,右側固定吸頂的元素可能是第一個,也可能是第X個,所有當點擊了左側tab之后,需要動態設置flatList的 stickyHeaderIndices

bug1 - 部分安卓機器上切換完tab之后,動態改變了 stickyHeaderIndices,右側列表數據出現白屏,且仍然可以滾動

解決方式:對flatList設置key值,如下

  // stickHeadList=[0]
  <FlatList
	key={stickHeadList}
	stickyHeaderIndices={stickHeadList}
  />

bug2 - 在上面的基礎上,切換tab仍可能出現白屏

原因:一般做列表,考慮到優化,都會設置較小的初始化渲染值,比如initialNumToRender 設成10,當時動態設置 stickyHeaderIndices 的時候,如果需要吸頂的item的index值大於 10(設置的時候壓根沒有初始化渲染),那么就會出現白屏

解決方式:initialNumToRender值的設置,需要大於 stickyHeaderIndices 里 第一個元素的值,可動態設也可根據ios,安卓設不同的值,需注意吸頂值必須小於50


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM