Я пытаюсь запустить segue из другого viewController: так что обычно выдается вызов segue, нажимая Cell на TVC. Однако при первом запуске приложения мне нужен пользователь для настройки какой-либо конфигурации.инициировать сеанс из другого viewController
Я пытаюсь запустить этот сеанс с первого viewController (также TVC), которое отображает приложение. Поэтому я создал публичный метод на SettingsTVC (где находится segue). Реализация этого метода заключается в следующем:
-(void)setStuff{
[self performSegueWithIdentifier:@"setStuffFromSettings" sender:self];
}
На первом ViewController я делаю следующим образом на нажатие кнопки:
[self.tabBarController setSelectedIndex:4];
SettingsTVC *settings=[[SettingsTVC alloc]init];
[settings setStuff];
В соответствии с NSLogs Митос называется правильно, но Ошибки приложения говорят мне, что:
'Receiver (<SettingsTVC: 0x812d730>) has no segue with identifier 'setStuffFromSettings''
Возможно, я ожидаю слишком многого? Я не могу установить другой сеанс, потому что это усложнит ситуацию, и я не хочу, чтобы viewController был доступен из более чем одного места (я думаю, Apple тоже не нравится).
Любые идеи? Заранее спасибо!
Спасибо, но у меня есть SEGUE правильно имени и ссылается на. Вот почему я нахожу себя озадаченным ошибкой. Фактически в качестве теста я добавил кнопку на viewController, где произошел segue, и я добавил [self performSegueWithIdentifier: @ "setStuffFromSettings" отправитель: self]; код и он работает. Он не работает, когда я пытаюсь инициировать его из другого viewControler с помощью общедоступного метода. – Marcal
подключен к UITableViewCell ... – Marcal
Не имеет значения, к какому способу вы подключили его, но я всегда подключаю свой Segue к VC, а затем вызываю executeSegue в методе didSelectRowAtIndexPath. Если вам нужна дополнительная помощь, вам нужно будет заархивировать этот проект и отправить его мне по электронной почте или опубликовать снимок экрана вашей раскадровки с именами всех файлов Segue, а также с кодом VC, с которым вы сталкиваетесь. –