この動作が発生しています。2つ以上のUIViewController間で共有したいUIViewControllerUIViewがあります。
まず、AppDelegateで共有UIViewControllerを次のようにインスタンス化します。
SharedViewController *sharedViewController = [[SharedViewController alloc] init];
次に、新しいUIViewControllerをインスタンス化するときに、共有ビューコントローラービューを追加します。
ViewController1 *viewController1 = [[ViewController1 alloc] init];
その中に、共有ビューコントローラビューを追加します。
- (void)viewDidLoad
{
[super viewDidLoad];
[self.view addSubview:sharedViewController.view];
}
これは、2番目のビューコントローラー(つまり、viewController2)が同じことを行う限り、正常に機能します。その後、viewController2はビューを取得し、viewController1は何も取得しません。
回避策を適用して、これをviewWillAppearに配置すると、機能するように見えますが、同じビューを別のビューに複数回追加しているのではないかと思います。これを行うためのより良い方法はありませんか?