【发布时间】:2018-03-29 03:45:42
【问题描述】:
我正在尝试在UITableViewController 上使用标准的UIRefreshControl 和UISearchController。然而,它看起来不像它应该做的那样。刷新时,滚动会使导航栏留下一个很大的空白区域,大概是微调器应该在的位置:
我有一个示例项目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 上的属性,这并没有什么不同。
有人遇到过同样的问题吗?
【问题讨论】:
-
我也看到了这个问题。如果我删除搜索栏或将搜索栏添加为表格视图的标题而不是将其设置为导航项,它对我来说可以正常工作。当导航栏尝试同时处理这两种情况时,这看起来像是一个错误。
-
我也有这个问题。除非我通过“self.navigationItem.searchController = nil”删除搜索栏,否则我会崩溃。
-
我与 Apple 取得了联系,他们已确认这是一个错误。
标签: ios uitableview ios11 uisearchcontroller uirefreshcontrol