首页 文章

如何在为反应原生FlatList getItemLayout渲染视图之前获取视图的大小

提问于
浏览
5

我需要将FlatList上的 initialScrollIndex 设置为1,因此在初始加载时第二行将可见 . 这取决于 getItemLayout . 我的FlatList单元格包含不同长度的文本,这导致每个单元格的高度不同,这导致我无法在 getItemLayout 中返回固定值 . 我的策略是:

  • 加载时,遍历数据集以获取列表并计算每行的高度

  • 将计算出的数据缓存到数组或字典中

  • getItemLayout中的返回缓存数据取决于索引

问题是 - 在将视图装入DOM层次结构之前,我找不到如何计算视图高度的方法 . 我读了很多关于onLayout prop的内容,但看起来应该首先渲染 View 以使其工作 .

那么,当列表单元格对于每一行不相同时,您使用什么来实现在react-native中滚动到指定行?

2 回答

相关问题