私は一般にアプリ全体にワインをリストアップするアプリを持っています(フルスクリーンまたはより小さなUIView)。このViewControllerは、ビューを割り当て、メインのViewControllerにデリゲート/ etcを割り当て、そのデリゲートを介してデータをポピュレートすることによって、通常は呼び出されます。素晴らしいことだが、今、私は検索の様相を構築しています、と私は結果を表示するために、この同じのViewControllerを使用したい既存のtableViewとViewControllerをUISearchDisplayControllerで使用する
wineListViewController = [[WineListViewController alloc] initWithWines:nil];
wineListViewController.navigationController = self.navigationController;
self.winesTableView.dataSource = wineListViewController;
self.winesTableView.delegate = wineListViewController;
// Table population code goes here
:画面上のワインを表示したいマスタービューから
私はcellForRowAtIndexPathなどにいくつかの複雑なルールを持っているからです。
しかし、UISearchDisplayControllerは独自のtableViewを使用したいので、同じ方法で表示するにはWineListViewController(heightForRow、cellForRow)からすべてのコードを複製する必要があります。 WineListViewControllerをUISearchDisplayControllerに接続してコードを複製しない方法がありますか?
これは素晴らしい返信でした。ありがとうございました。私は実際それが有線になっていたが、データが到着したらtableViewをリロードするためのリマインダーが必要でした。次の人にこれを読んでもらうには、上記のコードの後にこれが必要です: 'self.searchDisplayController.searchResultsDataSource = wineListController; self.searchDisplayController.searchResultsDelegate = wineListController; '' SearchResultsDone'には次のものが必要です: 'wineListController.currentWines = resultArray; [self.winesTableView reloadData]; ' – beeudoublez