Я новичок в Objective C и iOS. Я встроил контроллер навигации в контроллер просмотра в раскадровку. Затем я добавил еще один контроллер представления в раскадровку, которая является контроллером корневого представления. У этого есть кнопка, которая соединяется с другим контроллером представления, у которого есть табличный вид, добавленный к нему. Когда я запускаю сборку, я получаю следующее исключение: «Причина NSInvalidArgumentException:» - [UIViewController tableView: numberOfRowsInSection:]: непризнанный селектор, отправленный в экземпляр 0x686d160 '. Вот код в файле реализации (только relaevant методов) Скажите, пожалуйста, если мне нужно предоставить больше коды:Исключение относительно UITable view
(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [contacts count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath: (NSIndexPath *)indexPath
{
static NSString *simpleTableIdentifier = @"RecipeCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier];
}
cell.textLabel.text = [contacts objectAtIndex:indexPath.row];
return cell;
}
Есть ли у массива контактов значения? – Dolo
ясно показывает, что ваш массив 'contacts' имеет некоторые недопустимые значения, такие как пустые или нулевые. Поэтому убедитесь, что он не является нулевым и имеет некоторое значение. – iEngineer
Вы можете отправлять сообщения объекту nil, но вы не можете отправлять сообщения на освобожденный объект. – Jeremy