编辑:添加了包含解雇的代码。
新数据
问题仍然与旧数据下列出的问题相同,但解雇线已更改。
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
NSString *title = [alertView buttonTitleAtIndex:buttonIndex];
if([title isEqualToString:@"Yes"])
{
NSLog(@"Calling Dismissal...");
[self.presentingViewController dismissViewControllerAnimated:YES completion:nil];
}
}
正在调用该函数,因为“Calling Dismissal ...”会显示在日志中。
当前层次结构:UITabBarController - NavigationController / NavigationController - View1 / View2
旧数据
如果问题令人困惑,我试图解雇一个UITabBarController而不是我提出的模态。 UITabBarController确实使用NavigationControllers来设置里面的两个视图。但是,无论我放入多少个parentViewController
(即):
[self.parentViewController.parentViewController.etc... dismissViewControllerAnimated:YES completion:nil];
UITableBarController不会被忽略。我有一个按钮放在两个视图的NavigationController中,调用上面的代码行。关于如何解雇UITableViewController的任何提示?
答案 0 :(得分:0)
呈现视图控制器与父视图控制器的概念不同,需要将其解除。这段代码:
[self.presentingViewController dismissViewControllerAnimated:YES completion:nil];
通常会做到这一点。
但是,根据此控制器的功能,我通常更喜欢让我所呈现的控制器向父母发送委托消息或NSNotification
,以便父母可以在解雇之前提取所需的任何数据。