UIScrollView向上滚动显示如pageControl

时间:2014-01-16 10:28:38

标签: objective-c uiscrollview

我有UIScrollView,在此视图中,我添加了更多UIView,就像这样

enter image description here

当我向上或向下滚动时,我希望UIView完全显示,效果如UIPageControl,但我只想更改一个或多个单元格,而不是页面。

我怎么能这样做?谢谢。

修改

效果如here

但我希望用来控制所有UIView,并向上和向下滚动一个或多个UIView

1 个答案:

答案 0 :(得分:0)

我找到了答案。

答案参考[this]

使用UIScrollView可以达到此效果。

修改

为了滚动准确性,我使用fmodf。这可以参考[this]

这是我的代码。

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
    float toMove = fmodf(scrollView.contentOffset.y, _cellHeight);

    if(toMove < _cellHeight / 2)
        [scrollView setContentOffset:CGPointMake(0, scrollView.contentOffset.y - toMove) animated:YES];
    else
        [scrollView setContentOffset:CGPointMake(0, scrollView.contentOffset.y + (_cellHeight - toMove)) animated:YES];
}

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
{
    [self scrollViewDidEndDecelerating:scrollView];
}