тогда я бы создал NSArray of Words и отфильтровал их: @ "title начинается с [c]% @"

аюсь сделать разделы в табличном представлении на основе алфавита и сортировать свои записи в алфавитном порядке по этим разделам.

Я собрал первое письмо в каждой записи bandArray в barsArrayIndex, и теперь я пытаюсь использовать NSPredicate для подсчета количества каждой буквы.

Я делаю это, следуяэто руководство.

Они используют NSArray, а я использую NSDictionary и, похоже, не могу заставить его работать. Может кто-нибудь мне помочь?

Приложение вылетает при попытке показать представление с табличным представлением в нем. В консоли отладчика отображается следующая ошибка:

* Завершение приложения из-за необработанного исключения «NSInvalidArgumentException», причина: «Невозможно выполнить операцию подстроки с чем-то, что не является строкой

Это мой код

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    NSString *alphabe,t = [bandsArrayIndex objectAtIndex:section];
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF beginswith[c] %@", alphabet];
    NSArray *letters = [bandsArray filteredArrayUsingPredicate:predicate];

    return [letters count];
}

РЕДАКТИРОВАТЬ: Это моя группа Array.

Заголовок

NSMutableArray *bandsArray;

@property (nonatomic, retain) NSMutableArray* bandsArray;

Реализация

// set array from plist
NSString *path = [[NSBundle mainBundle] pathForResource:@"Bands" ofType:@"plist"];
NSMutableArray* tmpArray = [[NSMutableArray alloc] initWithContentsOfFile:path];

self.bandsArray = tmpArray;

// sort array after name ascending
NSSortDescriptor *nameSorter = [[NSSortDescriptor alloc] initWithKey:@"name" ascending:YES selector:@selector(caseInsensitiveCompare:)];
[bandsArray sortUsingDescriptors:[NSArray arrayWithObject:nameSorter]];

Ответы на вопрос(1)

Ваш ответ на вопрос