我在 UIScrollView 中有 3 个“页面”(第 0 页、第 1 页、第 2 页),它们通过手指滑动捕捉到。那里也有一个 UIPageControl。UIScrollView 开始显示第 0 页。我想做的是有时首先显示第 3 页。我怎样才能以编程方式做到这一点。
顺便说一下,只需将 currentPage(UIPageControl 的)设置为页码就没有任何作用。
我在 UIScrollView 中有 3 个“页面”(第 0 页、第 1 页、第 2 页),它们通过手指滑动捕捉到。那里也有一个 UIPageControl。UIScrollView 开始显示第 0 页。我想做的是有时首先显示第 3 页。我怎样才能以编程方式做到这一点。
顺便说一下,只需将 currentPage(UIPageControl 的)设置为页码就没有任何作用。
(来自 PageControl 示例)
要直接转到滚动视图的特定部分,请使用
CGRect frame = scrollView.frame;
frame.origin.x = frame.size.width * page;
frame.origin.y = 0;
[scrollView scrollRectToVisible:frame animated:YES];
我刚刚实现了相同的功能,例如滚动视图和页面控制并使用了
pageControl.currentPage = {pageNumber};
效果很好,您确定在 Interface Builder 中正确设置了 pageControl 插座(如果您正在使用它)。
如果问题是滚动视图不起作用,而不是 pageControl。然后确保您正确设置了 scrollView 的 contentsize。
scrollView.contentSize = CGSizeMake(320*numberOfPages, scrollView.frame.size.height);
然后,将此滚动视图添加到每个部分
page1ViewController.view.frame = CGRectMake(0, 0, 320, 200);
[scrollView addSubview:page1ViewController.view];
下一页被推超过 1 个屏幕宽度
page2ViewController.view.frame = CGRectMake(320, 0, 320, 200);
[scrollView addSubview:page2ViewController.view];