我在我的tableview中添加了一个UIRefreshControl
,这样我就可以允许用户拉动刷新。
他们不需要不断刷新,只需每 30 秒刷新一次。我怎样才能允许他们每 30 秒执行一次?
@IBOutlet weak var tableView: UITableView!
private let refresher: UIRefreshControl = UIRefreshControl()
override func viewDidLoad() {
super.viewDidLoad()
//load Event data
loadData()
// Add Refresh Control to Table View
tableView.refreshControl = refresher
refresher.addTarget(self, action: #selector(refreshData(_:)), for: .valueChanged)
refresher.attributedTitle = NSAttributedString(string: "Fetching events...")
}
@objc private func refreshData(_ sender: Any) {
// Fetch Data
loadData()
}
private func loadData() {
//code here for grabbing data
}
最佳答案
非常简单;每次用户刷新时,您都将 Date 存储在属性中,下一次,如果 30 秒尚未过去,您将不执行任何操作。
关于ios - 如何允许用户每 "n"秒刷新一次表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53773738/