Я реализовал таблицу, заполненную основными данными, и теперь я пытаюсь индексировать ее с помощью разделов, отображая боковой алфавит (в формате контактов).
В приведенном ниже коде, если я использую закомментированную строку, у меня есть только буквы для существующих разделов. Но мне нужен весь алфавит, поэтому я изменил возвращаемый массив:
- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView
{
//return [fetchedResultsController sectionIndexTitles];
indexArray = [NSArray arrayWithObjects: @"{search}", @"A", @"B", @"C", @"D", @"E", @"F", @"G", @"H", @"I", @"J",@"K", @"L", @"M", @"N", @"O", @"P", @"Q", @"R", @"S", @"T", @"U", @"V", @"W", @"X", @"Y", @"Z", @"#", nil];
return indexArray;
}
Все буквы отображаются на боковом указателе. Но теперь мне нужно реализовать метод, который возвращает индекс выбранного раздела, и здесь у меня есть некоторые проблемы:
- (NSInteger)tableView:(UITableView *)tableView sectionForSectionIndexTitle:(NSString *)title atIndex:(NSInteger)index
{
//return [fetchedResultsController sectionForSectionIndexTitle:title atIndex:index];
NSString *correspondingLetter = [indexArray objectAtIndex:index];
NSUInteger correspondingIndex = [[fetchedResultsController sections] indexOfObject:correspondingLetter];
NSLog(@"------index:%i\ncorrespondingLetter: %@\ncorrespondingIndex: %i\n", index,correspondingLetter, correspondingIndex);
return correspondingIndex;
}
С приведенным выше кодом, если я использую закомментированную строку, у меня возникает ошибка каждый раз, когда я выбираю букву, в которой нет соответствующего раздела. Итак, что я пытаюсь сделать, это получить индекс раздела, используя выбранную букву, и найти ее позицию в существующих разделах. Но это не работает. Есть ли у вас какие-либо идеи?
Заранее спасибо, Ясса