iOSviewController的生命周期

锦溪5g7N 发布于 2015/12/30 18:00
阅读 1K+
收藏 0
iOS

为什么viewController在加载view时,viewDidLayoutSubviews会调用两次?

下边是我自己测试的调用顺序

-[ViewController init]

-[ViewController initWithNibName:bundle:]

-[ViewController loadView]

-[ViewController viewDidLoad]

-[ViewController viewWillAppear:]

-[ViewController viewWillLayoutSubviews]

-[ViewController viewDidLayoutSubviews]

-[ViewController viewWillLayoutSubviews]

-[ViewController viewDidLayoutSubviews]

-[ViewController viewDidAppear:]

我测试了下,看下是不是跟子视图的个数有关,但及时我多增了子视图个数,也没有变化

加载中
0
v
v凉夏季
这个方法是每当屏幕方向发生变化时都会调用viewDidLayoutSubviews
0
樱黯雨
樱黯雨
layoutSubviews在以下情况下会被调用:
1、init初始化不会触发layoutSubviews
2、addSubview会触发layoutSubviews
3、设置view的Frame会触发layoutSubviews,当然前提是frame的值设置前后发生了变化
4、滚动一个UIScrollView会触发layoutSubviews
5、旋转Screen会触发父UIView上的layoutSubviews事件
6、改变一个UIView大小的时候也会触发父UIView上的layoutSubviews事件
0
iChenwin
iChenwin
斯坦福公开课第五课有讲到,今天刚看到,讲义:http://blog.csdn.net/ichenwin/article/details/52168214
0
450426721
450426721

给大家分享一个不错的存储框架:https://github.com/huangzhibiao/BGFMDB
完美支持:
int,long,signed,float,double,NSInteger,CGFloat,BOOL,NSString,NSMutableString,NSNumber,NSArray,NSMutableArray,NSDictionary,NSMutableDictionary,NSMapTable,NSHashTable,NSData,NSMutableData,UIImage,NSDate,NSURL,NSRange,CGRect,CGSize,CGPoint,自定义对象 等的存储.
框架同时带有"字典转模型"的功能模块,在只需要将服务器传过来的字典转成模型的情况下,可以不必要再引入MJExtension那么多文件,造成代码冗余,缩减安装包.

返回顶部
顶部