iOS - UIPageControl page indicator dots not changing with UISwipeGestureRecognizer
Asked Answered
V

1

1

I am using UIPageControl and UISwipeGestureRecognizer to switch between 2 view controllers of my application. I have modified this tutorial without using scroll view.

I have 2 issues:

1) Using the swipe gesture is changing the view controllers/pages but not the dots indicating the current page. I have tried

if (self.pageControl.currentPage == 0) {
 self.pageControl.currentPage = 1 
}

but I am not sure why it does not work. I have the outlet available

@property (strong, nonatomic) IBOutlet UIPageControl *pageControl;

2) I am using - (IBAction)changePage:(id)sender for changing the page. I would like to know how to change to a page on clicking on a certain dot. I mean to say that on clicking on dot 1, I should go to the first view controller and on clicking on dot 2, I should navigate to the second view controller.

Vento answered 17/1, 2014 at 18:29 Comment(7)
any suggestion? ideas are welcome...Vento
Is the pageControl outlet nil? Tapping on dots will be hard (they are too small, and not an easy to calculate position).Submultiple
I just did like this pageControl = [[UIPageControl alloc] init]; When I do NSLog(@"pageControl = %@",pageControl);, I get pageControl = <UIPageControl: 0x8d766d0; frame = (0 0; 0 0); autoresize = W; layer = <CALayer: 0x8d75500>>Vento
I figured that out now - I was doing pageControl = [[UIPageControl alloc] init]; That was why current page was not working. Now it works. But could you guide me as to how to change the page on clicking a particular dot - it might not be so easy but I would like to try it.Vento
You need to know where the dots are and add buttons over them or tap gestures. I don't know how to work out where the dots are - there isn't a public API for that. And from a user point of view, the dots are too small to tap. You shouldn't do it. But feel free to add buttons / gestures to either end of the control - if they are a normal size...Submultiple
Could you explain it with reference to #21356309. Also, you might want to post your answer to this question.Vento
I think - matbe you could post what you said as an answerVento
S
0

You need to know where the dots are and add buttons over them or tap gestures. I don't know how to work out where the dots are - there isn't a public API for that. And from a user point of view, the dots are too small to tap. You shouldn't do it. But feel free to add buttons / gestures to either end of the control - if they are a normal size...

Submultiple answered 30/1, 2014 at 20:15 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.