iOS addChildViewController

2022-09-06  本文已影响0人  百事星空

iOS5.0之前只能在ViewController的view中不断的通过addSubView添加subView到VC的view视图层级中。
这样使得主ViewController中的内容越来越混乱,代码越来越多,subView的管理越来越困难。
iOS5.0之后按照MVC的原则,每个ViewController只需要管理一个view视图层次结构,因此我们可以使用childViewController来拆分开发中比较复杂的View。并且此时的childViewController拥有了与父ViewController同步的生命周期。

添加子控制器

//[childVC willMoveToParentViewController:superVC];//自动调用,可以省略
[superVC addChildViewController: childVC];
[superVC.view addSubview: childVC.view];
[childVC didMoveToParentViewController:superVC];//手动调,不可以省略

移除子控制器

[childVC willMoveToParentViewController:nil];//手动调用,不可以省略
[childVC removeFromParentViewController];
[childVC.view removeFromSuperview];
//[childVC didMoveToParentViewController:nil];//自动调用,可以省略

多个子控制器切换
上一篇 下一篇

猜你喜欢

热点阅读