2015-12-07 66 views
3

我有一個使用Xcode 7 beta 4(Swift 2.1)的Master-Detail項目,其中MVC和DVC都是UIViewControllers。我在DVC中有一個UISearchController屬性,用於在DVC導航控制器的titleView中顯示UISearchBar。這個搜索欄在iPad上工作正常,但在iPhone上,當我推動DVC時,我可以看到UISearchBar,但它不能被竊聽或第一響應者。UINavigationController中的UISearchBar titleView沒有響應/可點擊

奇怪的是,如果我實例在viewDidLoad中本地UISearchController並設置其搜索欄爲titleview的,我可以用的UISearchBar就好了互動,但我每次推視圖控制器的時候,我得到一個警告:

「試圖加載當它重新分配是不允許的視圖控制器的看法 - UISearchController」

如果我通過創建一個DVC屬性創建UISearchController的一個類的實例,那麼的UISearchBar不相互作用:

self.detailViewController?.navigationItem.titleView = self.searchController.searchBar 

但是,如果我做一個局部變量,它的交互(與警告如上所述):

let localSearchController = UISearchController(searchResultsController: nil) 
self.detailViewController?.navigationItem.titleView = localSearchController.searchBar 

這個bug已經完全傻眼了我,這僅發生在iPhone上。這似乎是一個簡單的問題,我嘗試了很多不同的方法來弄明白。也許這裏有人有一個想法是什麼問題。謝謝!

+0

你有沒有設法使它工作?我處於類似的情況,除了我沒有收到任何警告 – jbouaziz

+0

不,我還沒有弄清楚這一點。我必須儘快解決它:) – powertoold

+0

明白了,如果你曾經這樣做,我會真正感興趣的是如何讓它工作:) – jbouaziz

回答

2

我能夠通過在我的應用程序中搜索definesPresentationContext並刪除它的所有實例來解決此問題。我相信可能有辦法解決它而不刪除。