在我的主要UIViewController中,我添加了一个主屏幕视图控制器作为子视图:
UINavigationController *controller = [[UINavigationController alloc] initWithRootViewController:vc];
controller.navigationBarHidden = YES;
controller.view.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height);
[self addChildViewController:controller];
[self.view insertSubview:controller.view atIndex:0];
[controller didMoveToParentViewController:self];
Run Code Online (Sandbox Code Playgroud)
问题是viewDidAppear和viewWillAppear只被调用一次,就像viewDidLoad一样.为什么是这样?我该如何工作?
基本上在vc里面我没有得到viewDidAppear也没有viewWillAppear.
我也尝试在没有导航控制器的情况下添加UIViewController,它仍然不起作用:
vc.view.frame = CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height);
[self addChildViewController:vc];
[self.view insertSubview:vc.view atIndex:0];
[vc didMoveToParentViewController:self];
Run Code Online (Sandbox Code Playgroud)