3

当 UIScrollView 到达其内容视图的末尾时,我有以下代码来获取事件:

- (void) scrollViewDidEndDecelerating:(UIScrollView *) scrollView
{
    float currentEndPoint = scrollView.contentOffset.y + scrollView.frame.size.height;

    // CGPoint bottomOffset = CGPointMake(0, scrollView.contentSize.height - scrollView.bounds.size.height);
    // [scrollView setContentOffset:bottomOffset animated:NO];

    if (currentEndPoint >= scrollView.contentSize.height)
    {
        // We are at the bottom

我注意到,当我滚动到底部时,它会碰到它并弹回。

如果我添加这个:

CGPoint bottomOffset = CGPointMake(0, scrollView.contentSize.height - scrollView.bounds.size.height);
[scrollView setContentOffset:bottomOffset animated:NO];

然后滚动回到底部。

有没有办法让它保持在底部而没有“反弹”,因为一旦它触到底部,就阻止它移动。

谢谢。

4

3 回答 3

7

您应该取消选中滚动视图的反弹属性。检查屏幕截图!

在此处输入图像描述

于 2015-05-15T05:58:37.397 回答
2

我不太明白你的意思,我得到的是你想在表格视图到达底部时停止滚动。所以这里是过程: -

- (void) scrollViewDidEndDecelerating:(UIScrollView *) scrollView
{
    float currentEndPoint = scrollView.contentOffset.y + scrollView.frame.size.height;

    if (currentEndPoint >= scrollView.contentSize.height)
    {

    CGPoint offset = scrollView.contentOffset;
    offset.x -= 1.0;
    offset.y -= 1.0;
    [scrollView setContentOffset:offset animated:NO];
    offset.x += 1.0;
    offset.y += 1.0;
    [scrollView setContentOffset:offset animated:NO];
  }
}
于 2015-05-15T06:00:01.213 回答
0

反弹问题,你可以解决

  var progressScrollView = UIScrollView()
  progressScrollView.bounces = false
于 2021-03-23T06:11:10.503 回答