В зависимости от действия пользователя мне нужно переместить пользователя от одного view controller
к другому в зависимости от того, завершают ли задание по времени или выполняют задачу, нажав кнопку. Оба метода используют один и тот же метод. completeSession()
Программное перемещение пользователя между контроллерами представлений в Swift
Я зашел в раскадровку и добавил идентификатор раскадровки для каждого экрана, который совпадает с классом контроллера вида. Поэтому на этот вопрос, class JournalViewController
имеет раскадровки идентификатор JournalViewController
, то же самое с SecondViewController
func completeSession() -> Void {
... some other stuff, unrelated ...
let journalViewController = self.storyboard?.instantiateViewControllerWithIdentifier("JournalViewController") as ViewController
self.presentViewController(journalViewController, animated: true, completion: nil)
}
Это не работает и вызывает мое приложение к сбою с reason: Storyboard <UIStoryboard> doesn't contain a view controller with identifier JournalViewController
, но JournalViewController.swift содержит:
class JournalViewController: UIViewController, UITextView Delegate {
Любая идея, как нажимать от SecondViewController
до JournalViewController
без ошибок?
Идентификаторы раскадровки не являются именами классов. У вас есть контроллер представления, выложенный в вашем раскадровке, который имеет пользовательский класс 'JournalViewController'? Если это так, используйте идентификатор раскадровки этого контроллера. –
Класс, когда я открываю правую панель и перехожу к инспектору идентификации, говорит, что класс JournalViewController –
Простите мое невежество, хотел бы, чтобы вы помогли мне понять, какая разница между идентификаторами раскадровки и именами классов контроллеров представления в их соответствующих. быстрые файлы, разве это не одно и то же? –