我有一个UIViewController
它是我的主视图控制器。当应用启动时,主视图控制器正在加载。然后是一个栏按钮。当我点击它时,另一个视图控制器会像这样加载。
LoginViewController *viewController = [[LoginViewController alloc]
initWithNibName:@"LoginViewController" bundle:nil];
viewController.mainViewController = self ;
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:viewController];
[navController setModalPresentationStyle:UIModalPresentationFormSheet];
navController.navigationBar.tintColor = [UIColor blackColor];
[self presentModalViewController:navController animated:YES];
在那个新的视图控制器中,我正在做一些任务,当单击关闭按钮时,结果应该加载在父视图控制器上。我怎么能做到呢?在父视图控制器ViewDidAppear
中,当我关闭顶视图控制器时也不会调用。我该怎么做呢?请帮帮我。
谢谢
第一行代码
[self presentModalViewController:navController animated:YES];
已经被弃用很长时间了,我不知道你为什么还在用它。
// Use below code instead
[self presentViewController:viewController animated:YES completion:nil];
你还需要使用协议和委托来传递任何对象到父视图控制器,而你正在解散另一个视图控制器。
如果你能显示一些代码,我们可能能够找出为什么你的viewDidAppear没有调用