ViewController的生命周期你真的懂了吗?

最近面试总被问及ViewController生命周期问题,像右滑切换的时候方法调用的顺序问题。可能平时总被忽略,在此总结一下。

以下划分几种情况为大家一一解读生命周期方法调用的问题(A控制器,B控制器)

---------------------------------华丽的分割线-----------------------------------------------------------

1、正常加载

A initWithNib

A loadView

A viewDidLoad

A viewWillAppear

A viewWillLayoutSubviews

A viewDidLayoutSubviews

A viewDidAppear

2、A Push到 B

A viewWillDisappear

B loadView

B viewDidLoad

B viewWillAppear

B viewWillLayoutSubviews

B viewDidLayoutSubviews

A viewDidDisappear

B viewDidAppear

3、点击返回按钮 B pop到 A

B viewWillDisappear

A viewWilAppear

B viewDidDisappear

A viewDidAppear

B dealloc

--------------------------------------------重点来了-------------------------------------------------------------------

4、B通过滑动手势,右滑后不松手

B viewWillDisappear

A viewWillAppear

5、A出现的占屏比率比B出现的占屏比率小时松手,仍然回到了B

A viewWillDisappear

A viewDidDisappear

B viewWillAppear

B viewDidAppear

6、A出现的占屏比率比B出现的占屏比率大 ,切回了A

B viewDidDisappear

A viewDidAppear

B dealloc

7、快速的右滑手势返回 B 到 A

B viewWillDisappear

A viewWilAppear

B viewDidDisappear

A viewDidAppear

B dealloc

8、当手动的向B的ViewController的view添加SubView时

B viewWillLayoutSubviews

B viewDidLayoutSubviews

ps:向SubView添加SubView时是不会调用以上两个方法的

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2017-03-17 18:09  爱影儿的大花猫  阅读(189)  评论(0编辑  收藏  举报