2

アルファベット順のセクションとセクション インデックスが正常に機能するテーブル ビューがあります。これは、NSFetchedResultsController によってサポートされています。

問題は、同じデータに対して生成された検索結果テーブルにあります。検索結果が正しく表示され、正しいセクション ヘッダーが表示されます。ただし、テーブルにセクションが 1 つしかない場合でも、テーブルの横にあるセクション インデックスには完全なアルファベットが表示されます。

2 つのテーブルに個別のフェッチ済み結果コントローラーを使用しています。検索フェッチ結果コントローラーは、正しい数のセクションがあり、そのsectionIndexTitles配列が正しいことを示しています。それでも、テーブル ビューにはテーブル全体のインデックスが表示されます。

検索結果のテーブル ビューを呼び出してみreloadSearchIndexTitlesましたが、インデックスにはまだ古いインデックスが表示されます。の使用も検討しましUILocalizedIndexedCollationたが、正しく理解していれば何も変わりません。

4

1 に答える 1

0

これはまだ完全には理解できていませんが、ビュー コントローラーの階層に問題があることがわかりました。具体的には、テーブル ビューとテーブル ビュー コントローラー (TVC) をコンテナー ビューとコントローラーに埋め込み、TVC をサブクラス化した UITableViewController を作成しました。

Apple の Table View Programming Guide は、この状況では TVC が代わりに UIViewController をサブクラス化することを提案しています。UITableViewController は、この状況には当てはまらない仮定を行います。この変更を行うと、検索インデックスが適切に機能するようになりました。

于 2012-12-28T20:54:48.950 に答える