у меня есть сгруппированное табличное представление с текстовыми полями в UITableViewCells.
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
if(indexPath.section < 6) {
UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(20, 10,580, 31)];
textField.tag = indexPath.section + 22;
textField.delegate = self;
[cell.contentView addSubview:textField];
[textField release];
}
return cell;
}
Поэтому, когда я нажимаю кнопку Сохранить, вызывается метод saveItem:
- (void)saveItem {
NSMutableArray *textFieldArray = [[NSMutableArray alloc] init];
for (int i = 0; i <6; i++) {
[textFieldArray addObject:(UITextField *)[self.view viewWithTag:22+i]];
}
...
}
Я могу без проблем изменить значения первых 4 текстовых полей. они также сохраняются, но когда я изменяю значение в 5-м или 6-м текстовом поле, мое приложение вылетает, и я получаю сообщение об ошибке:
* Завершение приложения из-за необработанного исключения 'NSInvalidArgumentException', причина: '* - [NSMutableArray insertObject: atIndex:]: попытка вставить нулевой объект в 0'
Есть предложения?
Спасибо, пока.