菜鸟教程小白 发表于 2022-12-13 02:34:09

ios - 如何检测我何时在 UITableView 下方滚动并回弹


                                            <p><p>我正在尝试使用 facebook 类型加载更多数据,现在它可以工作,但在设备上非常滞后,因为它要求服务器获取任何不存在的内容,然后一直调用向下滚动功能(因为不知何故当我重新加载数据时,它会滚动到顶部)。如果有办法防止滚动到顶部,那就太好了。但我的主要问题是,有没有办法检测我何时向下滚动,并且 LET GO(停止滚动)就像我滚动过去我所拥有的一样,然后它回到它的位置,然后调用我的方法......目前它当滚动大于 UITableView 的高度时不断调用代码</p>

<pre><code>-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    CGFloat height = scrollView.frame.size.height;

    CGFloat contentYoffset = scrollView.contentOffset.y;

    CGFloat distanceFromBottom = scrollView.contentSize.height - contentYoffset;

    if(distanceFromBottom &lt; height)
    {
      ;
      ;
      ;
      ;
    }
}
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>UIScrollViewDelegate 方法</p>

<pre><code>- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate;
</code></pre>

<p>做你想做的事。它在用户停止滚动后被调用,您可以在此时检查 scrollOffset 以查看是否应该触发刷新代码。 (您可以使用 scrollViewDidScroll 来更新 View 以显示如果他放手将发生用户更新)</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何检测我何时在 UITableView 下方滚动并回弹,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/16469999/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/16469999/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何检测我何时在 UITableView 下方滚动并回弹