美文网首页
iOS的init相关及其相关方法的经验漫谈

iOS的init相关及其相关方法的经验漫谈

作者: 抹茶不加糖 | 来源:发表于2016-01-18 12:47 被阅读112次

initWithCoder

  • 解档方法,使用xib/storyboard等文件都会调用这个方法;
  • 并不是一个初始化的好地方(当从Nib中加载时),因为有些outlet可能为nil,所以这个时候我们最好使用awakeFromNib。

awakeFromNib

  • 当使用xib/storyboard,是一个好的初始化去处。
  • 只会被加载一次。
  • 当你需要写一个UIView的子类,并且想在load nib的时候做一些初始化工作的时候,可以选择。bundle在load nib时会给每一个View对象发送一个awakeFromNib消息。

initWithFrame

  • 用于代码创建,可以动态地添加组件&设置自身的属性

iOS中比较重要的几个方法

+ (void)load -> +(void)initialize -> - (void)loadView
->
- (void)viewDidLoad ->
- (void)viewWillAppear:(BOOL)animated ->
- (instancetype)initWithCoder:(NSCoder *)aDecoder ->
- (void)awakeFromNib ->
- (instancetype)initWithFrame:(CGRect)frame ->
- (void)layoutSubviews
  • load:加载到内存中,程序刚启动的时候调用。调用在main函数之前。

  • initialize:初始化类,类第一次使用的时候调用。

  • loadView:设置控制器的根View,重写该方法后,以该方法为主,storyboard文件将不再起作用。

相关文章

网友评论

      本文标题: iOS的init相关及其相关方法的经验漫谈

      本文链接:https://www.haomeiwen.com/subject/enshkttx.html