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
标签:设置,FlatList,stickyHeaderIndices,React,tab,白屏,动态,吸顶 来源: https://www.cnblogs.com/hjj2ldq/p/15386617.html