在iOS应用程序的UIRefreshControl中,我认为默认设置是当我将UITableView(UISrollView)下拉大约“100px”时,刷新开始。
我想让上面的值更小。(例如,“50px”)
这可能吗?
如果可能,请告诉我示例代码。
尝试这个:
// definition
extension UIRefreshControl {
func refreshManually() {
beginRefreshing()
sendActions(for: .valueChanged)
}
}
// usage
var isRefreshingManually = false
func scrollViewDidScroll(_ scrollView: UIScrollView) {
if scrollView.contentOffset.y < -80.0 {
if !isRefreshingManually && !refreshControl.isRefreshing {
isRefreshingManually = true
refreshControl.refreshManually()
}
} else if scrollView.contentOffset.y >= 0 {
isRefreshingManually = false
}
}
我的示例代码适用于 UICollectionView,但 UITableView 和 UIScollView 也可以很好地工作。
将我的代码中的“-80.0”替换为您想要的阈值。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)