使用UIScrollView生成问题

时间:2010-10-07 15:34:57

标签: iphone objective-c iphone-sdk-3.0 ios4

这可能是一个简单的问题。我有一个包含3个视图的UIScrollView。我需要显示3个点,如指示器(表示用户有更多页面)。我该怎么做?

3 个答案:

答案 0 :(得分:8)

使用UIPageControl:

pageControl = [[UIPageControl alloc] initWithFrame:CGRectMake(...)]; // set in header
[pageControl setNumberOfPages:3];
[pageControl setCurrentPage:0];
[pageControl setBackgroundColor:[UIColor clearColor]];
[self.view addSubview:pageControl];

这是显示点的UI组件...页数是点数。当前页面是当前突出显示的页面。

然后,您需要使用滚动视图委托方法来确定您滚动到的页面:

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{
  int newOffset = scrollView.contentOffset.x;
  int newPage = (int)(newOffset/(scrollView.frame.size.width));
  [pageControl setCurrentPage:newPage];
}

答案 1 :(得分:0)

您可以创建contentView,在其中添加UIScrollView和UIPageControl,将pageControl的numberOfPages设置为所选的计数,当您在pageControl(currentPage属性)中滚动更改页面时。

干杯, KrzysztofZabłocki

答案 2 :(得分:-1)

您可以使用带有3个点的UIPageControl。您需要屏幕空间(假设屏幕底部)放置页面控件,以使您的滚动视图无法达到全高。