我的UIViewController中有一个UITableView,并添加了一个UIRefreshControl:
lazy var refreshControl: UIRefreshControl = {
let refreshControl = UIRefreshControl()
refreshControl.addTarget(self, action: #selector(ListViewController.handleRefresh), for: UIControlEvents.valueChanged)
return refreshControl
}()
override func viewDidLoad() {
super.viewDidLoad()
self.tableView.addSubview(self.refreshControl)
}
它工作正常但会产生令人讨厌的UI效果,它与标题视图重叠。
我尝试过设置frame height
和contentInset
,但都没有效果。
答案 0 :(得分:3)
我发现我不得不延迟UIRefreshControl被解雇,以便UI正常运行。
这对我来说可能是非常独特的,但我发布它是为了以防万一。
let when = DispatchTime.now() + 0.5 // change to desired number of seconds
DispatchQueue.main.asyncAfter(deadline: when) {
refreshControl.endRefreshing()
}