2012-02-14 53 views
0

我有一个页面控件和一个scrollView在我的一个视图中实现。目前,我有2页,滚动视图的内容大小设置为496(每页248)的宽度。一切正常,因为它更新和滚动正确,但是,我注意到,即使没有页面左侧或右侧,我仍然可以继续滚动。iOS页面控制滚动锁定

如果我在第一页上,或者如果我在最后一页上禁用滚动,有没有办法禁用向左滚动?请看下面的代码片段,看看我在做什么。

// Initialize the scroll view 
scrollView.pagingEnabled = YES; 
scrollView.contentSize = CGSizeMake(scrollView.frame.size.width * 2, scrollView.frame.size.height); 
scrollView.showsHorizontalScrollIndicator = NO; 
scrollView.showsVerticalScrollIndicator = NO; 
scrollView.scrollsToTop = NO; 
scrollView.delegate = self; 

// Functions called for the page control/scrollview 
- (void)loadScrollViewWithPage:(int)page window:(UIView *)pageView 
{ 
    if(page < 0 || page >= pageControl.numberOfPages) 
    { 
     return; 
    } 

    // Add our view 
    CGRect frame = scrollView.frame; 
    frame.origin.x = frame.size.width * page; 
    frame.origin.y = 0; 
    [pageView setFrame:frame]; 
    [scrollView addSubview:pageView]; 
} 

- (void)scrollViewDidScroll:(UIScrollView *)sender 
{ 
    // Update our page when we have more than 50% of the adjacent page available 
    CGFloat pageWidth = scrollView.frame.size.width; 
    int page = floor((scrollView.contentOffset.x - pageWidth/2)/pageWidth) + 1; 

    if(page < 0 || page >= pageControl.numberOfPages) 
    { 
     return; 
    } 

    pageControl.currentPage = page; 

    [pageControl setNeedsDisplay]; 
} 

回答

0

我想通了。显然有一个'反弹'的属性,允许用户继续滚动,即使他们超过了界限。关闭此功能可将窗口锁定到位。