documentation -dismissViewControllerAnimated:completion: :
, , . , ; .
, :

vc2, . vc2 -viewWillAppear vc1, :
- (void)viewWillAppear {
if (!userLoggedIn) {
UIViewController *vc1 = [[YourViewControllerClass1 alloc] init];
[self presentViewController:vc1 animated:YES completion:nil];
}
}
Show Login VC vc1, :
- (IBAction)touchUpInsideShowLoginVCButton:(id)sender {
UIViewController *loginVC = [[YourLoginViewControllerClass alloc] init];
loginVC.delegate = self.presentingViewController;
[self presentViewController:loginVC animated:YES completion:nil];
}
vc2 loginVC , vc2 loginVC. ( delegate .h loginVC:)
@property (strong, nonatomic) UIViewController *delegate;
, Login, , ( -dismissViewControllerAnimated:completion: on vc2, ), vc2 .
- (IBAction)touchUpInsideLoginButton:(id)sender {
if (loginSuccessful) {
[self.delegate dismissViewControllerAnimated:YES completion:nil];
}
}