約 45,000 個のアイテムを含むテーブル ビューを取得しました。リストをすばやくスクロールできるように、インデックスバーを使用したいと考えています。
ここで他の質問を見てきましたが、何をすべきかわかりません。
私は次の2つの機能を持っています:
-(NSArray*)sectionIndexTitlesForTableView:(UITableView *)tableView
{
return alphabetsArray;
}
- (NSInteger)tableView:(UITableView *)tableView sectionForSectionIndexTitle:(NSString *)title atIndex:(NSInteger)index {
return index;
}
次に何をすればいいのかわからない。同様に、アルファベット順に並べ替えられた空港と呼ばれる配列があります。この配列で何をすべきですか?
アップデート
それで、使用できる記事を見つけて、今ではかなり近づいていると思います。ただし、テーブル ビューには 2 つの項目しか表示されません。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
NSLog(@"ROWS METHOD CALLED");
NSArray *unsortedKeys = [alphabetizedAirports allKeys];
NSArray *sortedKeys = [unsortedKeys sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];
NSString *key = [sortedKeys objectAtIndex:section];
NSArray *airportsForSection = [alphabetizedAirports objectForKey:key];
return [airportsForSection count];
}
sortedKeys 配列には約 60 個の項目があります。airportsForSection 配列は 2 つの項目しか取得しないため、配列を返すと、テーブルビューには 2 つの項目しか表示されません。解決方法はありますか?