我遇到了这种行为:我有一个 UIViewController UIView,我想在 2 个或多个 UIViewControllers 之间共享它。
首先,我将 AppDelegate 中的共享 UIViewController 实例化为:
SharedViewController *sharedViewController = [[SharedViewController alloc] init];
然后,当我实例化新的 UIViewController 时,我添加了共享视图控制器视图:
ViewController1 *viewController1 = [[ViewController1 alloc] init];
并在其中添加共享视图控制器视图:
- (void)viewDidLoad
{
[super viewDidLoad];
[self.view addSubview:sharedViewController.view];
}
这工作正常,只要第二个视图控制器 - 即 viewController2 - 做同样的事情,然后 viewController2 得到视图,而 viewController1 什么也得不到!
我应用了一种解决方法,将它放在 viewWillAppear 中,它似乎可以工作,但我担心我会多次将相同的视图添加到另一个上,难道没有更好的方法吗?