2012-02-11 217 views
1

我想弄清楚如何同时关闭父视图控制器和子视图控制器。我已经创建了一个委托,并可以从父级关闭子视图控制器。我想添加代码来解雇父母,所以我可以返回到主菜单。我需要添加什么建议来同时解雇父母?关闭父视图控制器和子视图控制器

这里是我的代码:

子视图控制器

- (IBAction)endGamePressed:(id)sender 
{ 
    [delegate pitchCounterViewControllerDidCancel:self]; 
} 

父视图控制器

- (void)pitchCounterViewControllerDidCancel:(PitchCounterViewController *)controller 
{ 
    [self dismissViewControllerAnimated:YES completion:nil]; 
} 

回答

0

在实践中,你应该尽量避免作出的ViewController解雇本身。

在你pitchCounterViewControllerDidCancel:方法,你需要一个委托调用(根据孩子控制器,由父视图控制器

一样的父执行:

- (void)pitchCounterViewControllerDidCancel:(PitchCounterViewController *)controller 
{ 
    [self dismissViewControllerAnimated:YES completion:nil]; 

    [delegate parentControllerDidFinish:self]; 
} 
+0

感谢twilson。你指出我正确的方向,结果是试图解雇父母,父母的父母给了我一个错误,我删除了父母的解雇,我能够回到主视图,回答如下:http ://stackoverflow.com/questions/3988432/two-modalviewcontroller – 2012-02-11 20:58:11