@@ -126,7 +126,7 @@ @interface ViewPagerController () <UIPageViewControllerDataSource, UIPageViewCon
126126
127127@property (getter = isAnimatingToTab, assign ) BOOL animatingToTab;
128128@property (getter = isDefaultSetupDone, assign ) BOOL defaultSetupDone;
129-
129+ @property BOOL isScrolling;
130130// Colors
131131@property (nonatomic ) UIColor *indicatorColor;
132132@property (nonatomic ) UIColor *tabsViewBackgroundColor;
@@ -219,10 +219,13 @@ - (IBAction)handleTapGesture:(id)sender {
219219 UIView *tabView = tapGestureRecognizer.view ;
220220 __block NSUInteger index = [self .tabs indexOfObject: tabView];
221221
222- // if Tap is not selected Tab(new Tab)
223- if (self.activeTabIndex != index) {
224- // Select the tab
225- [self selectTabAtIndex: index];
222+ // If user is not scrolling tabview
223+ if (!self.isScrolling ) {
224+ // If tap is not selected tab (new tab)
225+ if (self.activeTabIndex != index) {
226+ // Select the tab
227+ [self selectTabAtIndex: index];
228+ }
226229 }
227230}
228231
@@ -745,6 +748,7 @@ - (void)defaultSettings {
745748
746749 self.animatingToTab = NO ;
747750 self.defaultSetupDone = NO ;
751+ self.isScrolling = NO ;
748752}
749753- (void )defaultSetup {
750754
@@ -983,6 +987,7 @@ - (void)scrollViewDidScroll:(UIScrollView *)scrollView {
983987 }
984988}
985989- (void )scrollViewWillBeginDragging : (UIScrollView *)scrollView {
990+ self.isScrolling = YES ;
986991 if ([self .actualDelegate respondsToSelector: @selector (scrollViewWillBeginDragging: )]) {
987992 [self .actualDelegate scrollViewWillBeginDragging: scrollView];
988993 }
@@ -1014,6 +1019,7 @@ - (void)scrollViewWillBeginDecelerating:(UIScrollView *)scrollView {
10141019 }
10151020}
10161021- (void )scrollViewDidEndDecelerating : (UIScrollView *)scrollView {
1022+ self.isScrolling = NO ;
10171023 if ([self .actualDelegate respondsToSelector: @selector (scrollViewDidEndDecelerating: )]) {
10181024 [self .actualDelegate scrollViewDidEndDecelerating: scrollView];
10191025 }
0 commit comments