UISearchController在编辑时添加偏移量

时间:2015-08-29 03:31:19

标签: ios swift uinavigationbar uisearchbar uisearchcontroller

UISearchController在编辑开始时添加一个偏移量。在横向模式下,它可以很好地工作,但不是在纵向模式下。

故事板中是否有任何可以帮助解决此问题的设置。

以下作品但是,会显示一个动画,其位于+320,然后返回-320。

func updateSearchResultsForSearchController(searchController: UISearchController) {
        self.mySearchContorller.searchBar.frame=CGRectMake(-320, 0, self.myTable.frame.size.width, 44.0)

    }

enter image description here

enter image description here

我使用了带有segue的故事板(显示细节).Attached是故事板的屏幕截图。

enter image description here

1 个答案:

答案 0 :(得分:1)

下载你的项目并玩它,似乎问题在这里:
改变
self.tblSearchController.definesPresentationContext = truedefinesPresentationContext = 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
}

} enter image description here