项目中有一个需求是,需要在一个父UIViewController中,加载一个子ViewController。我这里是用的方式是:
[self addChildViewController:_baseVC];
[self.view addSubview:_baseVC.view];
这里有个坑就是:子viewcontroller的viewWillAppear不会被调用!!!!viewDidLoad和viewDidAppear都会调用。我这里的解决方案是在父VC中手动调用。但是造成这样的原因还不清楚。
找到了解决方案:
解决UIViewController addChildViewController不调用viewWillAppear问题

在iOS开发中,使用addChildViewController添加子控制器时可能会遇到viewWillAppear不被调用的问题。通过手动调用beginAppearanceTransition可以解决这个问题。在添加子控制器后,需要在父控制器中调用beginAppearanceTransition以确保viewWillAppear方法正常执行。当移除子控制器时,正确调用相关方法以触发viewWillDisappear和viewDidDisappear。
最低0.47元/天 解锁文章
3219

被折叠的 条评论
为什么被折叠?



