gpt4 book ai didi

ios - 使用 UIScrollView 分页拉动刷新

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:39:53 24 4
gpt4 key购买 nike

在我的应用程序中,我有一个 ScrollView ,用户可以使用拉动刷新来使用基于 EGORefreshTableHeaderView 的拉动刷新自定义实现进行更新。它在没有分页的情况下工作得很好,但是由于可以理解的原因而打开了分页, ScrollView 会弹回页面并且不会保持锁定在拉动刷新上,因为它太小了它不会注册为可以滚动的页面.

有没有一种方法可以让我以直观的方式解决这个问题?

最佳答案

今天遇到了同样的问题,找到了解决方案:

原因是 contentOffset 与您的分页不匹配,因为加载 View 的大小与您的页面大小不同,因此 scrollview 函数检测到并滚动到当前页面。

对我来说,最好的办法是在触发 pulltorefresh 时禁用分页(在使用 ScrollView 的 contentOffset 之前),如果在 ScrollView 上启用了分页,则在刷新后恢复它

这是我在我使用的库上所做更改的示例

switch (newState) {
case SVPullToRefreshStateAll:
case SVPullToRefreshStateStopped:
[self resetScrollViewContentInset];
if (self.isPaginationEnabled) {
self.scrollView.pagingEnabled = YES;
}
break;

case SVPullToRefreshStateTriggered:
if (self.scrollView.pagingEnabled) {
self.isPaginationEnabled = YES;
self.scrollView.pagingEnabled = NO;
}
break;

case SVPullToRefreshStateLoading:
[self setScrollViewContentInsetForLoading];

if(previousState == SVPullToRefreshStateTriggered && pullToRefreshActionHandler)
pullToRefreshActionHandler();

break;
}

关于ios - 使用 UIScrollView 分页拉动刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19193999/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com