Mam problem z kontrolerem UISearch, gdzie jeśli mam tekst na pasku wyszukiwania i odrzucam VC, to pasek wyszukiwania nie zniknie i pozostanie na ekranie zachodzenie na siebie w innych VC. Następnie ulega awarii, jeśli naciśniesz przycisk anulowania.UISearchController nie odrzuci paska wyszukiwania i nakładania się na iOS 8 Swift
Próbowałem kilku rozwiązań na SO, ale żaden z nich nie zadziałał. :/
self.resultSearchController = ({
let controller = UISearchController(searchResultsController: nil)
controller.searchResultsUpdater = self
controller.dimsBackgroundDuringPresentation = false
controller.hidesNavigationBarDuringPresentation = false
controller.searchBar.sizeToFit()
controller.searchBar.searchBarStyle = UISearchBarStyle.Minimal
controller.searchBar.barTintColor = UIColor(red: 243/255, green: 243/255, blue: 243/255, alpha: 1)
controller.searchBar.tintColor = UIColor.blackColor()
controller.definesPresentationContext = true
controller.edgesForExtendedLayout = UIRectEdge.None
self.tableView.contentInset = UIEdgeInsetsMake(64, 0, 0, 0)
self.tableView.tableHeaderView = controller.searchBar
return controller
})()
Naprawdę doceniam każdą pomoc w tej sprawie!
AKTUALIZACJA: Tak więc znalazłem niezbyt świetne rozwiązanie, które ma ustawić .active = false w viewWillDisappear. Jednak problem polega na tym, że artefakt SearchBar będzie wyświetlał się na następnym/poprzednim VC przez sekundę, zanim całkowicie zniknie.
WOW. DZIĘKUJĘ CI. –
Uratowałeś mój dzień. Dzięki – masgar
Dziękuję. Nie znałem tej metody. self.definesPresentationContext = true – Alexander