我正在尝试在UIRefreshControl
上使用标准UISearchController
和UITableViewController
。然而,它看起来并不像它应该做的那样。在刷新时,滚动会使导航栏留下一个大的空白区域,大概应该是微调器的位置:
我有一个示例项目on GitHub。以下是控件的设置方法:
override func viewDidLoad() {
super.viewDidLoad()
let spinner = UIRefreshControl()
spinner.addTarget(self, action: #selector(refresh), for: .valueChanged)
refreshControl = spinner
searchController = UISearchController(searchResultsController: nil)
navigationItem.searchController = searchController
}
我尝试将刷新控件分配给UITableView
上的属性,而不是UITableViewController
上的属性,这没有什么区别。
有没有人遇到同样的问题?
答案 0 :(得分:5)
您可以使用旧方式使用UIRefreshController,如下所示:
override func viewDidLoad() {
super.viewDidLoad()
let spinner = UIRefreshControl()
spinner.addTarget(self, action: #selector(refresh), for: .valueChanged)
self.tableView.addSubview(spinner)
searchController = UISearchController(searchResultsController: nil)
navigationItem.searchController = searchController
}