// embed FirstVC as the Root View Controller of a Navigation Controller
class FirstVC: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .yellow
let button = UIButton(type: .system, primaryAction: UIAction(title: "Push to Second VC", handler: { _ in
let vc = SecondVC()
self.navigationController?.pushViewController(vc, animated: true)
}))
view.addSubview(button)
button.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
button.centerXAnchor.constraint(equalTo: view.centerXAnchor),
button.centerYAnchor.constraint(equalTo: view.centerYAnchor)
])
}
}
class SecondVC: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .green
let button = UIButton(type: .system, primaryAction: UIAction(title: "Push to Third VC", handler: { _ in
let vc = ThirdVC()
self.navigationController?.pushViewController(vc, animated: true)
}))
view.addSubview(button)
button.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
button.centerXAnchor.constraint(equalTo: view.centerXAnchor),
button.centerYAnchor.constraint(equalTo: view.centerYAnchor)
])
}
}
class ThirdVC: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .cyan
let v = UILabel()
v.text = "This is Third VC"
view.addSubview(v)
v.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
v.centerXAnchor.constraint(equalTo: view.centerXAnchor),
v.centerYAnchor.constraint(equalTo: view.centerYAnchor)
])
if let navC = self.navigationController {
var a = navC.viewControllers
a.remove(at: 1)
navC.setViewControllers(a, animated: false)
}
}
}
Comments
0 B
|👍
/👎
0 B
|👍
/👎
0 B
|👍
/👎