/*
Create a new project...
- Embed the default View Controller in a Navigation Controller
- add two buttons: "Push" and "Present"
Connect the buttons to these actions:
*/
class ViewController: UIViewController {
@IBAction func doPush(_ sender: Any) {
if let vc = storyboard?.instantiateViewController(withIdentifier: "ProfileViewController") {
navigationController?.pushViewController(vc, animated: true)
}
}
@IBAction func doPresent(_ sender: Any) {
if let vc = storyboard?.instantiateViewController(withIdentifier: "ProfileViewController") {
present(vc, animated: true, completion: nil)
}
}
}
/*
- add another View Controller (ProfileViewController)
- add one button: "Done"
Connect the button to this action:
*/
class ProfileViewController: UIViewController {
@IBAction func gotTap(_ sender: Any) {
if let pvc = presentingViewController {
pvc.dismiss(animated: true, completion: nil)
} else {
navigationController?.popViewController(animated: true)
}
}
deinit {
print("ProfileViewController deinit")
}
}
/*
Run the app...
See if you get "ProfileViewController deinit" as expected.
Check the Memory Graph to see if it looks the same as your app.
*/
Comments
0 B
|👍
/👎