#ios #objective-c #xcode #segue #ios10
#iOS #objective-c #xcode #segue #ios10
Вопрос:
ПРИВЕТ, я продолжаю получать причину ошибки: ‘Завершение работы приложения из-за неперехваченного исключения ‘NSInvalidArgumentException’, причина: ‘У Receiver () нет перехода с идентификатором ‘MainToEndUserAgreement»‘
Я точно знаю, что контроллеры подключены, и имя является правильным для перехода.
Сначала я попробовал [self performSegueWithIdentifier:@"MainToEndUserAgreement" sender:self];
Затем после исследования я попытался: [instantiateViewControllerWithIdentifier:@"MainToEndUserAgreement"];
и
`self.storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];`
EndUserAgreementViewController *willthiswork = [[EndUserAgreementViewController alloc] init];
Ни то, ни другое не сработало.
При каждом изменении я стирал данные с устройства и очищал проект.
Что еще я могу попробовать?
Комментарии:
1. Возможны две причины; 1. Идентификатор перехода неверен; ваш снимок экрана, похоже, указывает на то, что это не так, поэтому 2. Контроллер представления, с которого вы выполняете переход , не тот, который, по вашему мнению, настроен / настроен в раскадровке.
2. Вторая причина была довольно близка к проблеме, но это заставило меня задуматься. Спасибо!
Ответ №1:
Ошибка связана с переходом под названием «LoginToMap». Но вы фокусируетесь на другом переходе, «MainToEndUserAgreement». Где вы пытаетесь выполнить LoginToMap segue? Кажется, либо он не существует, либо вы отправляете performSegue не в тот VC.
редактировать: тогда что такое «self», когда вы выполняете переход? Предположительно, это другой VC, чем исходный VC segue в раскадровке.
Что бы ни было «self», у него нет перехода с таким именем.
Комментарии:
1. Мой плохой, я возился с именем для тестирования, отредактирую его сейчас.
2. Если вы не собираетесь голосовать, вы можете не получить еще много ответов 🙂
3. Это было намного глубже в коде, раскадровка была потеряна, и она не смогла найти переход, я только что создал эту учетную запись, поэтому я не могу публично проголосовать за нее. Но спасибо!