我正在尝试设置一个pull to refresh功能。刷新工作就像它应该的那样。 我按照以下方式设置了refreshControl:
let refreshControlAnimation = UIRefreshControl()
self.refreshControl?.addTarget(refreshControlAnimation, action: #selector(handleRefresh(refreshControl:)), for: UIControlEvents.valueChanged)
self.tableView?.addSubview(refreshControlAnimation)
我设置了一个目标并用pull执行handleRefresh函数。
func handleRefresh(refreshControl: UIRefreshControl) {
DataController().fetchDataLive(mode: "get", completionHandler: { success in
self.tableView.reloadData()
refreshControl.endRefreshing()
})
}
但是,如果我拉动刷新动画会被执行,但它不应该在它应该结束时结束。就像你在图片上看到的那样,动画仍然在节标题下执行。
为什么我的endRefreshing函数不会更快调用?
答案 0 :(得分:2)
得到了你的问题。不应将刷新控件添加为子视图,因为swift已经完成了将其添加到tableview / tableviewcontrollers的规定。
使用: -
self.tableView.refreshControl = yourRefreshControl