У меня проблема, которую я почему-то не могу понять самостоятельно.
У меня есть tableView, который загружается из массива, который загружается из файла.(Я объявил мои массивы как NSArray в заголовочном файле)
NSString *subMenuFileList = [[NSBundle mainBundle] pathForResource:@"myfile" ofType:@"plist"]; // file list name/location
sectionsArray = [[NSArray alloc] initWithContentsOfFile:subMenuFileList];//loading my array with the contents of the file
У меня все работает нормально, для разделов таблицы я использую sectionArray.count
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return sectionsArray.count; // return number of rows
и для ячейки.textLabel.text у меня есть следующий код
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
cell.textLabel.text= [sectionsArray objectAtIndex:indexPath.row];// get cell name from the array at row#
return cell;
также отлично работает.
Проблема, которая у меня есть, заключается в том, что загружаемый файл не расположен в алфавитном порядке, поэтому мой массив оказываетсяне в алфавитном порядке.Мое решение проблемы состояло в том, чтобы загрузить файл во временный массив, отсортировать его и затем присвоить его массиву разделов с помощью следующего простого кода:
NSString *subMenuFileList = [[NSBundle mainBundle] pathForResource:@"myfile" ofType:@"plist"]; // file list name/location
tempArray = [[NSArray alloc] initWithContentsOfFile:subMenuFileList];
sectionsArray = [tempArray sortedArrayUsingSelector:@selector(caseInsensitiveCompare:)];// my new sorted array
по какой-то причине после этой простой настройки ни один издругие функции могут получить доступ к EXC_BAD ACCESS, когда программа пытается определить количество строк в разделе или ячейку textLabel, см. файлы изображений (http://img846.imageshack.us/i/screenshot20110416at141.png/).Я не могу понять, почему это происходит, так как переменные являются глобальными, и когда я делаю NSLog для sectionArray.count, он выводит правильные значения.
Любая помощь будет очень признательна.Спасибо !!