Закрытие вида, отображаемого через модальный сегмент


Я вручную вызываю segue (set as modal) для отображения формы входа в Xcode 4.2 с помощью раскадровки со следующей строкой кода:

[self performSegueWithIdentifier:@"LoginSegue" sender:nil];

Я, вероятно, пропустил что-то очень простое, однако я не могу найти способ программно закрыть представление входа и вернуться к предыдущему представлению.

вид является частью контроллера вида навигации, поэтому установка типа segue на "push" позволяет мне использовать кнопку "назад", чтобы отправить меня обратно к моему предыдущему экран, но в "модальном" режиме, я не совсем уверен, как этого добиться (после нажатия кнопки, например)

любая помощь будет высоко ценится.

4 77

4 ответа:

Если целью развертывания является iOS 5.0 или более поздняя версия, используйте следующее сообщение:

[self dismissViewControllerAnimated:YES completion:nil];

или в Swift:

self.dismissViewControllerAnimated(true, completion: nil)

Если ваша цель развертывания старше, используйте это (устаревшее) сообщение:

[self dismissModalViewControllerAnimated:YES];

[self dismissViewControllerAnimated:YES completion:nil]; Это новый способ в IOS5

следующее должно работать нормально...

[self dismissModalViewControllerAnimated:YES];

Я делаю именно это со страницей входа в мой последний учебник здесь, без каких-либо проблем.

следующий код работает в swift 3:

 self.dismiss(animated: true, completion: nil)