Я получаю предупреждение выше при выборе перехода в didSelectRowAtIndexPath. Это происходит на iPad. iPhone выдает другое предупреждение, и я посмотрю, исправит ли это исправление другое.
У меня есть два перехода в методе. Первый работает без происшествий. Второй принимает предупреждение. Я просмотрел сеть и проверил решения других. нада, поэтому пишу сюда..
Вот код: (Я открыт для лучших способов написать это!)
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
//NSLog(@"%s", __FUNCTION__);
if ((indexPath.section == 0) || (indexPath.section == 1) || (indexPath.section == 2)) return;
if (indexPath.section > 4) return;
//Images THIS WORKS OK
if (indexPath.section == 3 && indexPath.row == 0) {
viewController1 = [[ViewController1 alloc] init];
[self performSegueWithIdentifier:@"detailToV1" sender:self];
[self.tableView reloadData];
}
if (indexPath.section == 3 && indexPath.row == 1) { // THIS REDULTS IN A WARNING
viewController2 = [[ViewController2 alloc] init];
[self performSegueWithIdentifier:@"detailToV2" sender:nil];
}
//Notes THIS WORKS OK BUT I HAD TO USE A NIB TO AVOID THE WARNING
if (indexPath.section == 4 && indexPath.row == 0) {
viewController3 = [[ViewController3 alloc] init];
[[self navigationController] pushViewController:viewController3 animated:YES];
[self.tableView reloadData];
}
}