‘Receiver () no tiene segue con el identificador’ addSegue ‘

Tengo un controlador de navegación que tiene un enlace segue entre ellos llamado “addSegue”. Cuando hago clic en la celda tableView aunque la aplicación se cuelga, tableView el siguiente error:

 Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Receiver () has no segue with identifier 'addSegue' 

No creo que tenga problemas con mi código. Aquí está el método en el que tengo la línea showSegueWithIdentifier :

 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { NSMutableSet *selectedUsers = [NSMutableSet set]; [self.tableView deselectRowAtIndexPath:indexPath animated:NO]; UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath]; cell.accessoryType = UITableViewCellAccessoryCheckmark; PFRelation *friendsRelation = [self.currentUser relationforKey:@"friendsRelation"]; PFUser *user = [self.allUsers objectAtIndex:indexPath.row]; [friendsRelation addObject:user]; [self.currentUser saveInBackgroundWithBlock:^(BOOL succeeded, NSError *error) { if (error) { NSLog(@"Error %@ %@", error, [error userInfo]); } }]; [self performSegueWithIdentifier:@"addSegue" sender:self]; } 

Aquí hay una foto de mi guión gráfico

Aquí hay una imagen actualizada de mi guión gráfico

Tenía el mismo problema y mi problema era que estaba llamando

 WRONG: [self.navigationController performSegueWithIdentifier:@"ShowVerify" sender:self]; 

en lugar de

 CORRECT: [self performSegueWithIdentifier:@"ShowVerify" sender:self]; 

así que compruebe que está llamando al método correcto performSegueWithIdentifier 🙂

enter image description here

 use segue identifier in Push Method and give the proper connection 

si está usando Identifier , llame a esta línea donde lo necesite

 [self performSegueWithIdentifier:@"identifierName" sender:self]; 

Swift 2.X

 self.performSegueWithIdentifier("identifierName", sender: self) 

Swift 3

 self.performSegue(withIdentifier: "identifierName", sender: self) 

En cuanto a la nueva pantalla que ha agregado de esa manera. En esa pantalla, cuando hayas terminado y quieras eliminarlo, es solo:

 self.dismiss(animated: false, completion: nil) 

Es difícil decirlo con certeza, pero otras personas han tenido problemas similares:

  • En esta pregunta , el asker creó una instancia del guión gráfico con init lugar de instantiateViewControllerWithIdentifier por lo que el segue no se configuró correctamente.

  • En esta pregunta , era algo raro que ocurría internamente con xcode y el simulador, y ejecutar Product-> Clean ayudó.

  • Y, por supuesto, es posible que el nombre de segue en el código no coincida con el nombre de segue en el Storybord, ¡pero supongo que ya lo has comprobado muchas veces!

Compruebe si UIKIT está o no en el archivo de encabezado. Sin saberlo, convertí a VC nueva en una subclase de View Controller.