Отображать и отклонять контроллер модального просмотра в Swift
Когда нажата кнопка, я хочу выполнить переход между двумя контроллерами представления, используя стиль модального перехода CoverVertical
, а затем отпустите его. Там есть информация о том, как это сделать в объективе C, но не может найти никакой хорошей информации в Swift. Пока я это сделал, но я не думаю, что это правильно:
@IBAction func insertStatus(sender: UIButton) {
var StatusVC: StatusViewController = StatusViewController()
var modalStyle: UIModalTransitionStyle = UIModalTransitionStyle.CoverVertical
StatusVC.modalTransitionStyle = modalStyle
self.presentViewController(StatusVC, animated: true, completion: nil)
}
Отклонение, которое я использую, так же не работает:
@IBAction func statusSaved(sender: UIBarButtonItem) {
self.dismissViewControllerAnimated(false, completion: { () -> Void in
let usersVC: UsersViewController = self.storyboard?.instantiateViewControllerWithIdentifier("UsersViewController") as UsersViewController
})
}
Ответы
Ответ 1
Swift 5:
present(UIViewController(), animated: true, completion: nil)
dismiss(animated: true, completion: nil)
Swift 2.2:
self.presentViewController(true, completion: nil)
Скрыть/закрыть контроллер представления:
self.dismissViewControllerAnimated(true, completion: nil)
Ответ 2
Отключить контроллер просмотра в Swift 3.0
self.dismiss(animated: true, completion: {})
Ответ 3
Вы можете использовать методы presentViewController:animated:completion:
и dismissViewControllerAnimated:completion:
из UIViewController
. См. Docs здесь
Ответ 4
Его довольно легко:
чтобы убрать модальный вид с помощью swift 3.0:
Используйте увольнение Api, как показано ниже:
> @IBAction func dismissClick(_ sender: Any) {
> dismiss(animated: true, completion: nil)
>
> }
В настоящее время:
> @IBAction func dismissClick(_ sender: Any) {
> present(UIViewController(), animated: true, completion: nil)
>
> }
Подробнее см. здесь:
https://developer.apple.com/documentation/uikit/uiviewcontroller#//apple_ref/doc/uid/TP40006926-CH3-SW96
Ответ 5
Уволить контроллер просмотра в Swift 4:
dismiss(animated: true, completion: nil)
Ответ 6
уволить (анимация: правда, завершение: ноль)