UITableViewController
事前設定されたカテゴリのリストをレンダリングし、それぞれのサイト/URLのリストを取得するサブクラスがあります。サイト名で検索できる検索機能を追加したい。
私が欲しいのは、検索スレッドを開始し(結果をフェッチして処理する)、それをテーブルに表示する通常の検索インターフェイスを用意することです。UITableView
が1形式のxibではない場合(つまり、検索テーブルビューの場合)、セルのカスタムセットを返すようにテーブルデリゲートを変更しました。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"RSSCatalogCell";
if(tableView != self.tableView)
return [searchController tableView:tableView cellForRowAtIndexPath:indexPath];
// ... usual cell initialization for categories
}
ネットワークスレッド(から生成されたsearchBarSearchButtonClicked:
)が終了するとすぐに、検索コントローラーテーブルにデータを再ロードするように要求します。
if(searchDisplayController.active)
[searchDisplayController.searchResultsTableView reloadData];
しかし、古いテーブル(カタログ全体を含む)はまだ表示されていますが、タッチを無視しているようです。