Я нашел лучшее решение в этой теме - использовать onLayout
для запуска прокрутки:
scrollToInitialPosition = () => {
this.scrollViewRef.scrollTo({ y: 100 });
}
...
<ScrollView
ref={(ref) => { this.scrollViewRef = ref; }}
onLayout={this.scrollToInitialPosition}
/>
Обратите внимание, что есть множество других предложений, использующих setTimeout
, componentDidUpdate
, InteractionManager
и др. c. Однако использование onLayout было единственным, что сработало для меня (а также мне кажется, что оно самое чистое).