Я хочу открыть новый UIViewController на кнопке через код. Я уже сделал контроллер в раскадровке и просто хочу связать его, а также я не хочу использовать интерфейс XIB или nibName?
Автоматическое открытие viewController в быстрой
Ответ 1
Чтобы открыть Новый контроллер просмотра, вам нужно написать эту строку в событии нажатия кнопки:
self.performSegueWithIdentifier("GoToViewController", sender:self)
Чтобы установить связь с новым контроллером представления, выполните следующие действия:
-
Выберите Новый контроллер просмотра из раскадровки и щелкните его правой кнопкой мыши
-
Появится всплывающее окно Dark dray (см. изображение)
-
Теперь в разделе "Представление Segues" выберите "Present Modally" и перетащите его на контроллер View, откуда вам нужно открыть этот контроллер представления и связать его
-
Вы найдете новый segue, созданный в контроллере New view
-
Теперь выберите, что segue перейдите к инспектору и скопируйте идентификатор или переименуйте его и скопируйте
-
Используйте этот идентификатор в приведенной выше строке
Надеюсь, что это сработает.
Ответ 2
self.navigationController!.pushViewController(self.storyboard!.instantiateViewControllerWithIdentifier("userProfileController") as UIViewController, animated: true)
Я хотел добавить контроллер просмотра в контроллер навигации, и это также работало
Ответ 3
Для swift 4.2 попробуйте следующий код:
self.navigationController!.pushViewController(self.storyboard!.instantiateViewController(withIdentifier: "inventoryViewController") as UIViewController, animated: true)