diff --git a/lib/ios/AnimatedReactView.m b/lib/ios/AnimatedReactView.m index 40daa6d44c3..b934929ad45 100644 --- a/lib/ios/AnimatedReactView.m +++ b/lib/ios/AnimatedReactView.m @@ -64,7 +64,7 @@ - (void)reset { _reactView.bounds = _originalLayoutBounds; _reactView.layer.bounds = _originalLayoutBounds; _reactView.layer.transform = _originalTransform; - [_originalParent addSubview:_reactView]; + [_originalParent insertSubview:_reactView atIndex:self.location.index]; _toElement.hidden = NO; _reactView.backgroundColor = _fromColor; [self removeFromSuperview]; diff --git a/lib/ios/RNNViewLocation.h b/lib/ios/RNNViewLocation.h index 0ea367b6e8a..8a5ae2e4cfb 100644 --- a/lib/ios/RNNViewLocation.h +++ b/lib/ios/RNNViewLocation.h @@ -8,6 +8,7 @@ @property(nonatomic) CGFloat toAngle; @property(nonatomic) CGFloat fromCornerRadius; @property(nonatomic) CGFloat toCornerRadius; +@property(nonatomic) NSUInteger index; @property(nonatomic) CATransform3D fromTransform; @property(nonatomic) CATransform3D toTransform; diff --git a/lib/ios/RNNViewLocation.m b/lib/ios/RNNViewLocation.m index 6d99bc5fdbd..6b9981dbc6d 100644 --- a/lib/ios/RNNViewLocation.m +++ b/lib/ios/RNNViewLocation.m @@ -15,6 +15,7 @@ - (instancetype)initWithFromElement:(UIView *)fromElement toElement:(UIView *)to self.fromCornerRadius = fromElement.layer.cornerRadius ?: [self getClippedCornerRadius:fromElement]; self.toCornerRadius = toElement.layer.cornerRadius ?: [self getClippedCornerRadius:toElement]; + self.index = [fromElement.superview.subviews indexOfObject:fromElement]; return self; }