diff --git a/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm b/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm index 8bbbb5118bc..3671801f14b 100644 --- a/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +++ b/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm @@ -201,8 +201,14 @@ void RCTSetEnableOnDemandViewMounting(BOOL value) { assert(std::dynamic_pointer_cast(state)); _state = std::static_pointer_cast(state); + auto &data = _state->getData(); - CGSize contentSize = RCTCGSizeFromSize(_state->getData().getContentSize()); + auto contentOffset = RCTCGPointFromPoint(data.contentOffset); + if (!oldState && !CGPointEqualToPoint(contentOffset, CGPointZero)) { + _scrollView.contentOffset = contentOffset; + } + + CGSize contentSize = RCTCGSizeFromSize(data.getContentSize()); if (CGSizeEqualToSize(_contentSize, contentSize)) { return;