// ViewController生命周期,各个方法按执行顺序排列如下:
init:初始化程序
// 视图初始化
这个方法不应该被直接调用,而是由系统自动调用。它会加载或创建一个 view 并把它赋值给 UIViewController 的 view 属性。
override func loadView() {
super.loadView()
print("加载视图")
}
//视图加载完成,但还没在屏幕上显示出来
我们可以重写这个方法,对 view 做一些其他的初始化工作。比如可以移除一些视图,修改约束,加载数据等
override func viewDidLoad() {
super.viewDidLoad()
print("加载视图结束")
}
// 在视图即将显示在屏幕上时调用
我们可以在这个方法里,改变当前屏幕方向或状态栏的风格等
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
print("视图即将显示")
}
// 在视图显示在屏幕上时调用时调用
我们可以在这个方法中,对视图做一些关于展示效果方面的修改
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
print("视图已经显示")
}
// 视图即将消失、被覆盖或是隐藏时调用
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
print("视图即将消失")
}
// 视图已经消失、被覆盖或是隐藏时调用
override func viewDidDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
print("视图已经消失")
}
// 当接收到内存警告时会执行这个方法
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
iOS--ViewController生命周期
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 如上图所示,ios有五种不同的生命周期状态,不同的状态间有着不同的关系。 这五种状态分别是: 1.Not Ru...
- (一)APP应用有以下几种状态: Not running:应用未运行; InActive:应用在前台未活动; Ac...
- 程序猿的开心一刻 下面哪种面向对象的方法可以让你变得富有?a,继承;b,封装;c,多态;d,抽象。 请在评论区输入...
- APP、APP与ViewController 启动app 总结:1,整体顺序是:app加载 → 根视图控制器加载 ...
- 1、替换ViewController中默认的View 2、单个ViewController的生命周期(ARC环境)...