阅读关于iOS开发的几本教程和书籍我经常会遇到一些术语:UIViewController生命周期和UIView生命周期.我很感兴趣:这两个术语之间是否存在实际差异?
查看Apple文档我发现viewDidAppear或loadView等方法是视图控制器生命周期的一部分,但我认为将它们作为视图生命周期和initWithNibName或dealloc等方法作为控制器的生命周期引用更为正确.或者没有这样的分离,当有人谈到视图生命周期时,他实际上意味着UIViewController的生命周期? @H_502_3@
查看Apple文档我发现viewDidAppear或loadView等方法是视图控制器生命周期的一部分,但我认为将它们作为视图生命周期和initWithNibName或dealloc等方法作为控制器的生命周期引用更为正确.或者没有这样的分离,当有人谈到视图生命周期时,他实际上意味着UIViewController的生命周期? @H_502_3@
解决方法
一旦你完全意识到两个班级之间的差异并将其纳入你的思想(通过实践),你所有的困惑都会消失
UIViewController – 一个本身没有UI的类(尽管不是完全正确的……见根视图),其目的是控制视图并做一些相关的事情.它就像一个警察或交通管制员监管其他人. (观点).
大多数情况下,您创建自己的UIViewController子类,并且该类在功能上往往非常沉重
>处理逻辑规则何时显示哪个视图
>连接到模型层(关于您的应用正在解决的问题的数据和事实)
>与其他控制器交互,
UIView – 一个表示可以在视觉上进行大量修改的矩形区域的类,但最重要的是,它在屏幕上可见,并且可以有子视图,也可以是UIViews.视图按视图层次结构组织.
大多数情况下,您可以自定义视图
>视觉上赏心悦目
>通过autolayout处理它的子视图
>表示您经常需要将特定类型的视觉信息子类化为更具体的视图类,如标签,文本,按钮等.
混淆新手的一点是每个视图控制器都有一个根视图,一个包含UIView实例的属性.通常,您可能会对是否讨论此根视图或讨论视图控制器感到迷茫.在开发人员之间的因果讨论中,这两个词有时可以互换使用.
两个控制器和视图有生命周期,但你不能混淆两者.
ViewController生命周期是控制器本身发生的事情,比如它从nib文件唤醒,或者收到低内存警告,但主要是关于它的根视图如何生命,它如何消失和死亡……
视图生命周期是关于视图如何布置其子视图,以及它如何呈现其内容.
我喜欢视觉类比..
简单地想象一个有很多彩色纸矩形的警察.警察是控制者,他说什么(视图)显示在屏幕上.
控制器和View是(模型视图控制器)MVC架构模式的一部分的抽象.我建议您立即研究,以便在您的脑海中进一步清除生命周期混乱的问题.
@H_502_3@ @H_502_3@ 原文链接:https://www.f2er.com/iOS/333558.html