У меня есть UIViewController, который реализует UITableViewDelegate, UITableViewDataSource и который содержит UITableView в качестве переменной-члена.Когда пользователь нажимает на одну из строк этой таблицы, приложение выполняет переход к раскадровке, чтобы открыть контроллер подробного представления.Этот контроллер подробного представления, конечно же, имеет кнопку в левом верхнем углу экрана, которая является кнопкой «назад», чтобы вернуться к UIViewController с помощью UIViewTable.
Итак, предположим, что я хочу программно «нажать«эта кнопка назад.Как именно я буду делать это в быстрой?Это самая последняя версия swift (swift 4?) В XCode 10.1.
ОБНОВЛЕНИЕ:
Итак, вот как я решил это.Как показывают ответы ниже, можно использовать self.navigationController? .PopViewController (animated: true), чтобы просто вернуться к предыдущему контроллеру представления.Однако я обнаружил, что хотел также вызвать конкретный метод в этом контроллере представления, чтобы он выполнял определенное поведение после его отображения.Оказывается, это также возможно, но в моем случае это было немного сложно, так как контроллер предыдущего представления был на самом деле UITabBarController.Поэтому мне нужно было получить интересующий меня ViewController от UITabBarController.Я сделал это так:
let numvc = navigationController!.viewControllers.count
let tvc:UITabBarController = navigationController!.viewControllers[numvc-2] as! UITabBarController
let my_vc: MyCustomVC = tvc.viewControllers![0] as! MyCustomVC
my_vc.some_function()
Здесь, конечно, MyCustomV - это мой класс контроллера пользовательских представлений, а some_function () - метод, который я хочу вызвать в этом классе.Надеюсь, это кому-нибудь поможет.