• iOS自定义View控件调用系统方法的区别


    1、load:加载类到内存,程序刚启动的时候调用,调用在main函数之前(只会被调用一次)

     2、initialize:初始化类,类第一次使用的时候调用一次(只会被调用一次)

     3、loadView:首先判断控制器是否有视图,没有就调用该方法,设置控制器的根view,重写该方法后,以该方法为主,xib ,storyboard文件将不再起作用。

     

     4、initWithCoder:这个解档方法是当控件是从xib、storyboard中创建时,会调用这个方法。

    5、awakeFromNib:加载xib完成时调用,这个方法是在initWithCoder:方法后调用,一开始经过initWithCoder创建出来的控件是死的,然后通过awakeFromNib来唤醒,所以这会有一个先后的调用顺序:initWithCoder  -> awakeFromNib  -> viewDidLoad -> viewWillAppear-> initWithFrame 

     6、viewDidLoad:视图加载完成

     7、viewWillAppear:视图将要出现

    8、initWithFrame:使用手码创建控件时,一般我们在该方法里动态添加组件&设置自身的一些属性。外界调用init方法,系统内部也会自动调用这个方法。

     

     4、layoutSubviews:方便数据计算,一般我们在这个方法里计算frame,这个方法里是控件最后一次布局子控件。

     5、drawRect:方便视图重绘。

     6、initWithNibName:要加载的xib的类为我们定义的视图控制器类。是延迟加载,这个View上的控件是 nil 的,只有到 需要显示时,才会不是nil。 

     7、loadNibName:即时加载,用该方法加载的xib对象中的各个元素都已经存在。

  • 相关阅读:
    VMware安装Linux时'Operating System Not Found'的解决方法
    [NLP自然语言处理]谷歌BERT模型深度解析
    【NPM】npm ERR! Unexpected end of JSON input while parsing near '...",'解决方案
    【前端基础系列】slice方法将类数组转换数组实现原理
    【读书笔记】理解基本排序算法
    【读书笔记】《人工智能简史》
    【前端基础系列】理解bind方法使用与实现
    【前端基础系列】理解GET与POST请求区别
    HTTPS工作原理
    微信WebView关闭后本地cookie无法清除问题
  • 原文地址:https://www.cnblogs.com/yuhao309/p/9497378.html
Copyright © 2020-2023  润新知