为什么在调用addChild(UIViewController)之后必须调用func didMove(toParent parent:UIViewController?)?

时间:2019-07-12 06:38:42

标签: ios uiviewcontroller uikit

致电func didMove(toParent parent: UIViewController?)的目的是什么?

从Apple文档中说:

  

如果要实现自己的容器视图控制器,则必须在完成向新控制器的转换后,或者如果没有转换,则在调用addChild之后立即调用子视图控制器的didMove(toParent :)方法。 (_ :)方法。

     

removeFromParent()方法在删除子视图后会自动调用子视图控制器的didMove(toParent :)方法。

函数似乎更新了视图控制器的过渡,但是我无法完全理解调用它的想法。如果我不打电话怎么办?

1 个答案:

答案 0 :(得分:0)

如果您不调用它,则子视图控制器将无法检测到确实移至了父视图控制器。这可能很重要。有时候,您需要在移至父级之后完全在子级控制器中执行某些操作