我有滚动视图,其中包含5个视图,它包括页面控制,当我点击页面控件的第四个气泡时它移动到第二个视图但我希望它应该直接移动到第四个视图请帮我解决这个问题。
调用pageControl如下:
[pageControl addTarget:self action:@selector(pageTurn:) forControlEvents:UIControlEventValueChanged];
pageTurn方法的实现如下:
- (void) pageTurn: (UIPageControl *) aPageControl
{
int whichPage = aPageControl.currentPage;
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.5];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
scrollView.contentOffset = CGPointMake(320 * whichPage, 0);
[UIView commitAnimations];
}
我的scrollViewDidScroll如下:
- (void) scrollViewDidScroll: (UIScrollView *) aScrollView
{
CGPoint offset = aScrollView.contentOffset;
pageControl.currentPage = offset.x /320 ;
}
答案 0 :(得分:0)
如果您查看文档中的UIPageControl,它会说:
当用户点击页面控件以移动到下一页或上一页时,控件将发送UIControlEventValueChanged事件以供委托处理。然后,委托可以评估currentPage属性以确定要显示的页面。 页面控件在任一方向上只前进一页。
UIPageControl一次只能用于切换一个页面,因此当您单击它时它只会更改为第二页(而不是第四页,无论您按什么点)。
您可能希望创建构成分页控件的自定义UIButtons。