在 iOS 中禁用弹跳以刷新滚动视图

问题描述 投票:0回答:1

我们如何在滚动视图中配置拉动刷新而不启用弹跳。 任何建议,将不胜感激。 提前致谢

已经尝试滚动视图做了滚动方法,但它不会调用,因为滚动视图可能没有足够的数据来滚动页面

ios uiscrollview scrollview pull-to-refresh
1个回答
-1
投票

在Swift语言UIScrollView中配置一个没有弹跳效果的下拉刷新控件,可以按照以下步骤进行:

创建一个 UIRefreshControl 实例:

let refreshControl = UIRefreshControl()

在滚动视图中添加刷新控件:

scrollView.addSubview(refreshControl)

配置刷新控件:

refreshControl.addTarget(self, action: #selector(refreshData), for: .valueChanged)
refreshControl.tintColor = UIColor.gray

// 设置色调颜色 refreshData 函数应该包含更新滚动视图中显示的数据的代码。

禁用反弹效果:

scrollView.bounces = false

请注意,禁用弹跳效果会阻止用户滚动到内容末尾,因此您可能需要相应地调整内容大小。

最后,当数据刷新完成后,调用刷新控件的endRefreshing方法停止旋转动画:

refreshControl.endRefreshing()

以下是完整代码的示例:

let refreshControl = UIRefreshControl()
    
override func viewDidLoad() {
    super.viewDidLoad()
    
    scrollView.addSubview(refreshControl)
    refreshControl.addTarget(self, action: #selector(refreshData), for: .valueChanged)
    refreshControl.tintColor = UIColor.gray
    scrollView.bounces = false
}

@objc func refreshData() {
    // Perform the data refresh
    // ...
    refreshControl.endRefreshing()
}

这应该在你的 UIScrollView 中配置一个没有弹跳效果的下拉刷新控件。

© www.soinside.com 2019 - 2024. All rights reserved.