diff --git a/renderer/native/ios/renderer/component/listview/NativeRenderBaseListView.mm b/renderer/native/ios/renderer/component/listview/NativeRenderBaseListView.mm index fe85bc71517..58191a5be31 100644 --- a/renderer/native/ios/renderer/component/listview/NativeRenderBaseListView.mm +++ b/renderer/native/ios/renderer/component/listview/NativeRenderBaseListView.mm @@ -117,11 +117,19 @@ - (BOOL)bounces { } - (void)setShowScrollIndicator:(BOOL)show { - [self.collectionView setShowsVerticalScrollIndicator:show]; + if (self.horizontal) { + [self.collectionView setShowsHorizontalScrollIndicator:show]; + } else { + [self.collectionView setShowsVerticalScrollIndicator:show]; + } } - (BOOL)showScrollIndicator { - return [self.collectionView showsVerticalScrollIndicator]; + if (self.horizontal) { + return [self.collectionView showsHorizontalScrollIndicator]; + } else { + return [self.collectionView showsVerticalScrollIndicator]; + } } - (void)setScrollEnabled:(BOOL)value { @@ -384,6 +392,7 @@ - (CGFloat)collectionView:(UICollectionView *)collectionView - (void)setHorizontal:(BOOL)horizontal { if (_horizontal != horizontal) { + BOOL previousShowScrollIndicator = self.showScrollIndicator; _horizontal = horizontal; UICollectionViewFlowLayout *layout = (UICollectionViewFlowLayout *)self.collectionView.collectionViewLayout; layout.scrollDirection = horizontal ? UICollectionViewScrollDirectionHorizontal : UICollectionViewScrollDirectionVertical; @@ -395,6 +404,9 @@ - (void)setHorizontal:(BOOL)horizontal { [self.collectionView setAlwaysBounceVertical:YES]; [self.collectionView setAlwaysBounceHorizontal:NO]; } + if (self.showScrollIndicator != previousShowScrollIndicator) { + [self setShowScrollIndicator:previousShowScrollIndicator]; + } } }