2016-04-30 6 views
0

UIViewControllerにはUISearchControllerUITableViewが含まれていました。 UITableViewは、ユーザーが何か入力を開始するたびに、UISearchControllerでフィルタリングされるすべての結果を最初に表示します。各セルをクリックすると詳細ページにリンクする必要があります。これはユーザーがまだ入力を開始していないときに機能しますが、ユーザーが入力を開始するとこれ以上は機能しません。そのため、UISearchControllerが結果を表示すると開始します。これは私がコンソールに入るすべてです:UISearchControllerがUITableViewと重なっているため、セルの詳細なViewControllerを表示できません

私はUISearchControllerは、実際に私はバグを引き起こすものであるべきだと思う最初の1以上のフィルタリングされた結果、を有する第二のUITableViewを提示していると思います
Warning: Attempt to present <MyProject.profileView: 0x13e9df000> on <MyProject.SearchPage: 0x142a1d8f0> which is already presenting <UISearchController: 0x142a1f7c0> 

。しかし、私は完全にはわかりません。

これは私が私のUIViewControllerUISearchControllerを追加する方法です:

searchController.searchResultsUpdater = self 
searchController.dimsBackgroundDuringPresentation = false 
self.definesPresentationContext = true 
searchController.searchBar.scopeButtonTitles = ["Groups", "People"] 
searchController.searchBar.delegate = self 
tableView.tableHeaderView = searchController.searchBar 

あなたがこの問題の原因および/またはどのように私はおそらくそれを修正することができすることができるものの任意のアイデアを持っている場合ならば、私はそれを本当に感謝私に知らせることができます。前もって感謝します。

答えて

0

2週間ほどこの問題に執着した後、私は解決策が実際にはかなり簡単だと分かった。私はちょうどUIViewControllerからではなくUISearchControllerからUIViewControllerを提示する必要がありました。この1行のコードで修正しました:

self.searchController.presentViewController(vc, animated: false, completion: nil) 
関連する問題