UISearchController在编辑开始时添加一个偏移量。在横向模式下,它可以很好地工作,但不是在纵向模式下。
故事板中是否有任何可以帮助解决此问题的设置。
以下作品但是,会显示一个动画,其位于+320,然后返回-320。
func updateSearchResultsForSearchController(searchController: UISearchController) {
self.mySearchContorller.searchBar.frame=CGRectMake(-320, 0, self.myTable.frame.size.width, 44.0)
}
我使用了带有segue的故事板(显示细节).Attached是故事板的屏幕截图。
答案 0 :(得分:1)
下载你的项目并玩它,似乎问题在这里:
改变
self.tblSearchController.definesPresentationContext = true
至definesPresentationContext = true
此外,您还要继承UITableViewController
,不要创建自己的表格,而是将其拖入故事板并使用它。以下是DetailViewController
应该如何显示的内容:
class DetailTableViewController:UITableViewController {
var tblSearchController:UISearchController!
override func viewDidLoad() {
super.viewDidLoad()
self.tblSearchController = UISearchController(searchResultsController: nil)
self.tableView.tableHeaderView=self.tblSearchController.searchBar
definesPresentationContext = true
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let aCell:UITableViewCell! = tableView.dequeueReusableCellWithIdentifier("Cell")
return aCell
}