请问下,我现在有一个UIScrollView,还有一个ViewControll的数组,然后我把这个数组遍历用addChildViewController添加到了UIScrollView,然后设置UIScrollView的contentSize是用ViewControll数组*屏幕宽度,达到滑动切换ViewControll。但是viewWillAppear不运行。求解释
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
答应是必须会调用~
这里说下调用时机(对于ChildController来说,毕竟是一个完整的是UIViewController周期其中一个步骤):
viewWillAppear, viewDIdAppear在执行
[self.view addSubview:childController.view];
后调用。
反之,viewWillDisappear, viewDidDisappear在执行
[childController.view removeFromSuperview];
后调用。
如果不信可以自己写一个简单的Demo,增加一个如下的操作:
cv *c = [cv new];
[self addChildViewController:c];
[self.view addSubview:c.view];
[c didMoveToParentViewController:self];
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[c.view removeFromSuperview];
});
在cv 重写viewWillAppear: viewWilDisappear:打上LOG进行验证。
楼主自己实际情况请参考上面进行分析~