UIViewController 객체가 생성되는 부분이다.
해당 초기화 메서드에서 필요한 초기화 작업들을 수행해주면 된다.
Controller 내의 View 계층 구조가 생성되는 부분으로 직접 View를 생성해서 할당한다.
override func loadView() { self.view = UIView }
View의 계층 구조가 메모리에 로드 된 상태로 초기화 작업을 수행한다. 뷰에 대해서 추가적인 구성 작업 수행이 필요할 때 사용
override func viewDidLoad() { super.viewDidLoad() // View에 대해서 추가로 구성할 것이 있다면 여기에 작성 }
View가 화면에 나타나기 직전에 호출되는 method로 View의 상태를 update 해야하거나 animation을 시작할 때 사용한다.
override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) // View가 나타나기 직전에 수행되어야 할 작업을 작성 }
View가 화면에 나타나면 호출되는 method로 Animation을 종료하거나 View의 상태를 update할 때 사용한다.
override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) // View가 나타난 직후에 수행되어야 할 작업을 작성 //ㅕ UI 재조정 시에도 사용 }
View가 화면에서 사라지기 직전에 호출되는 method로 데이터를 저장하거나 Animation을 시작할 때 사용.
override func viewWillDisappear(_ animated: Bool) { super.viewWillDisappear(animated) // View가 사라지기 직전에 수행되어야 할 작업을 작성 }
View가 화면에서 사라지면 호출되는 method로 animation을 종료하거나 View의 상태를 update할 때 사용한다.
override func viewDidDisappear(_ animated: Bool) { super.viewDidDisappear(animated) // View가 사라진 직후에 수행되어야 할 작업을 작성 }
UIViewController 객체가 메모리에서 해제
deinit {
// 뷰 컨트롤러가 메모리에서 해제되기 전에 수행할 작업 수행
}
@main 함수가 호
출되어 UIApplication
객체 생성.AppDeldgate
객체 생성
UIApplication
객체는AppDelegate
객체를 delegate로 설정.
-AppDelegate
는UIResponder
,UIApplicationDelegate
를 상속 및 참조
AppDelegate
객체의 application(_:didFinishLaunchingWithOptions:)
메서드를 호출어플 실행 시
UIApplication
객체는AppDelegate
객체의application(_:didFinishLaunchingWithOptions:)
메서드를 호출해서 앱의 초기화를 수행
Root view controller
의 생성AppDelegate 객체는
UIWindow
를 생성하고, 이 윈도우에Root view controller
를 할당합니다.
Root view controller
의 view
가 생성됩니다.
- Root view controller의 view는 로드됩니다. 이때
viewDidLoad()
메서드가 호출됩니다.
-UIViewController
의 Life cycle에 따라 동작
- 앱의 사용자 인터페이스에서 사용자의 입력에 따라 함수가 호출.
- 앱이 Background 상태로 전환되면,
applicationWillResignActive()
함수가 호출. 이 함수는 앱이 Background로 전환되기 전에 실행해야 하는 작업을 수행합니다.
- 앱이 Foreground 상태로 전환되면,
applicationDidBecomeActive()
함수가 호출됩니다. 이 함수는 앱이 Foreground로 전환된 후 실행해야 하는 작업을 수행합니다.
applicationWillTerminate()
함수가 호출됩니다. 이 함수는 앱이 종료될때 수행