旋转期间 searchController.active 之后,Swift searchBar 与 tableView 的顶部分离
Posted
技术标签:
【中文标题】旋转期间 searchController.active 之后,Swift searchBar 与 tableView 的顶部分离【英文标题】:Swift searchBar separates from top of tableView after searchController.active during rotation 【发布时间】:2014-11-25 14:53:18 【问题描述】://为什么包含searchResults数组的tableView在旋转到横向再回到纵向后,将tableView的顶部向下推,从而将searchBar与tableView的顶部分开。这在每次旋转到横向和返回后重复发生。这仅在进行搜索后发生。如果 searchController 未激活,则不会在轮换时发生。
类 InitialViewController: UIViewController, UITableViewDataSource, UITableViewDelegate,UISearchResultsUpdating
@IBOutlet weak var tableView: UITableView!
let searchController = UISearchController(searchResultsController: nil)
let b = searchController.searchBar
b.sizeToFit() // crucial, trust me on this one
b.scopeButtonTitles = ["Drugs", "Tumor", "Target"]
tableView.tableHeaderView = searchController.searchBar
definesPresentationContext = true
searchController.searchResultsUpdater = self
searchController.dimsBackgroundDuringPresentation = false
【问题讨论】:
【参考方案1】:由于某些未知原因,实现以下功能解决了旋转问题。
override func willAnimateRotationToInterfaceOrientation(toInterfaceOrientation: UIInterfaceOrientation, duration: NSTimeInterval)
self.tableView.reloadData()
在 viewDidLoad 函数之后粘贴上面的函数,我的问题就消失了。不知道为什么。格伦·蒂斯曼
【讨论】:
以上是关于旋转期间 searchController.active 之后,Swift searchBar 与 tableView 的顶部分离的主要内容,如果未能解决你的问题,请参考以下文章