I have made small research on this issue and unfortunately it appears to be a quite common problem in RN (see e.g. https://github.com/facebook/react-native/issues/21468 and more related) so I tried different approaches, but I do not have a strong opinion if it is what actually solves the problem, but at least make it much less observable.
Following some guides I see that there's no such a great gain from getItemLayout and it behaves not so good with SectionList since calculating offset was not including height of secions' headers (e.g. it's a reason for this lib https://github.com/jsoendermann/rn-section-list-get-item-layout).
This changes are results of my observations and even if it might not be very professional, maybe it's a good step forward?
Final solution might be to add disableVirtualization prop, which solves all the issues, but I believe we don't need it now since it's a great optimisation cost.
I have made small research on this issue and unfortunately it appears to be a quite common problem in RN (see e.g. https://github.com/facebook/react-native/issues/21468 and more related) so I tried different approaches, but I do not have a strong opinion if it is what actually solves the problem, but at least make it much less observable.
Following some guides I see that there's no such a great gain from
getItemLayout
and it behaves not so good withSectionList
since calculating offset was not including height of secions' headers (e.g. it's a reason for this lib https://github.com/jsoendermann/rn-section-list-get-item-layout).This changes are results of my observations and even if it might not be very professional, maybe it's a good step forward?
Final solution might be to add
disableVirtualization
prop, which solves all the issues, but I believe we don't need it now since it's a great optimisation cost.