ViewController๋ iOS ์ฑ ๊ฐ๋ฐ์์ ๋นผ๋์ ์ ์๋ ์์์ด๋ค. ๊ตฌ์กฐ์ ์ผ๋ก ์ด๋ป๊ฒ ๊ตฌ์ฑ๋์๋์ง ์์๋ณด๊ณ , ์ด๋ค life cycle์ ๊ฐ์ง๋์ง ์ดํดํด๋ณด์. ๊ทธ๋ผ ์์ํ์.
ViewController
-
View management model
-
์ญํ
- view ๊ตฌ์ฑ
- view event ์ฒ๋ฆฌ
- data๋ฅผ view์ ์ฐ๊ฒฐ
-
templates
- ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๋ AppDelegate์์๋ ๊ฐ๋ฅ
์ด๊ธฐํ
- parameter
- nibName: nib ํ์ผ๋ช
- bundle: nibํ์ผ์ด ์๋ Bundle(NSBundle) ๊ฐ์ฒด
UIViewController.init()
์ธ ๊ฒฝ์ฐ nil๋ก ๋์ด์ด
- ํ์ฉ
Life Cycle
- init
- loadView
- viewDidLoad
- viewWillAppear
- viewDidAppear
- viewWillDisappear
- viewDidDisappear
- deinit
LoadView
- view์ ๋ํ customizing ์์
- ๊ตฌํํ์ง ์์๋ ๊ธฐ๋ณธ์ ์ผ๋ก view๊ฐ ์์ฑ๋์ด load๋จ
์ฃผ์์ฌํญ
- init method์์ view์ ์ ๊ทผํ๋ฉด ์ํํจ
- ์ด๊ธฐํ ์์ ์ค์ viewDidLoad๊ฐ ํธ์ถ๋ ์ ์์
- method ํธ์ถ ์์๊ฐ ๋ฌ๋ผ์ ธ ๋ฒ๊ทธ ๋ฐ์์ํ ์์
- ์ผ๋ฐ์ ์ธ ์ํฉ
- viewController๊ฐ ์ฌ์ฉ๋๊ธฐ ์์ํ ๋ ํธ์ถ๋จ
- init method์์ ์ ๊ทผ
- view ์์ฑ, ์ด๊ธฐํ ๊ณผ์ ์์ ํธ์ถ๋จ
Container View Controller
- UIViewController ํ์์ ChildViewController๋ฅผ ๋ ์ ์์
- ๊ธฐ๋ฅ์ ๋ฐ๋ผ ViewController๋ฅผ ๋ถ๋ฆฌ ํ, Container ViewController์ ๋ชจ์์ ๋ณด์ฌ์ค ์ ์์
- ๋์ผํ ์๋ช ์ฃผ๊ธฐ๋ฅผ ๊ฐ์ง
์ ๋ฆฌ
- UIWindow์์ rootViewController๊ฐ ์ฌ๋ผ๊ฐ๋ค.
- ViewController์์๋ ChildViewController๋ฅผ ๊ฐ์ง๋ค.
- ์ถ๊ฐ์ ์ผ๋ก ๋ค๋ฅธ ์ฐฝ์ ๋์ธ์๋ ์๊ณ (modal) ์ด๋
presentedViewController
๋ก ์ ๊ทผ ๊ฐ๋ฅํ๋ค.