Когда приложение запускается, вы начинаете с ViewController (тот, что посередине). Оттуда я добавляю ВК справа. Когда пользователь нажимает кнопку, которая находится в этом VC, я хочу, чтобы это представление исчезло (что я в настоящее время делаю, просто изменяя его кадр на 900), и на его место приходит VC слева.
Все, что я пробовал, потерпело неудачу, потому что я так не понимаю, как это сделать.
Как заставить работать такой функционал?
Предполагая, что у вас есть ссылка на представление контейнера, вы можете скрывать и отображать представления, но RightViewController
справа должен сообщаться с основным средним MiddleViewController
Здесь вы можете использовать Protocols
для связи между ними, загляните в https://medium.com/@nimjea/delegation-pattern-in-swift-4-2-f6aca61f4bf5 для более подробной информации.
Когда RightViewController
сообщает/делегирует MiddleViewController
, что кнопка нажата
ты можешь просто
self.rightContainerView.isHidden = true
self.leftContainerView.isHidden = left
Вы можете сделать это:
if let ViewController2 = segue.destination as? ViewController2 {
//here...
} else if let viewcontroller = segue.destination as? ViewController1 {
//here..
}