我有一個基模態視圖控制器。從那裏關閉2個模態視圖控制器
FieldReportViewController *fieldReport = [self.storyboard instantiateViewControllerWithIdentifier:@"fieldReportView"];
[self presentModalViewController:fieldReport animated:YES];
,我所說的第三個視圖控制器:我再創建一個第二與
ScoutingReportViewController *scoutingReport = [self.storyboard instantiateViewControllerWithIdentifier:@"ScoutView"];
[self setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal];
[self presentModalViewController:scoutingReport animated:YES];
現在我想要返回的第一個視圖控制器。我已經嘗試(這是當前顯示視圖控制器):
-(IBAction)doneBtn
{
//[self.parentViewController dismissModalViewControllerAnimated:YES]; //removed
[self dismissModalViewControllerAnimated:NO]; //added
[[NSNotificationCenter defaultCenter] postNotificationName:@"CloseAllModalViews" object:nil userInfo:nil]; //added
}
在中間/ s的視圖控制器
,我在viewDidLoad中添加觀察者:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(dismissModals:)
name:@"CloseAllModalViews"
object:nil];
和方法:
-(void) dismissModals:(id)sender
{
[self dismissModalViewControllerAnimated:NO];
}
按下時,它什麼都不做。它不排除任何意見。
任何想法如何我可以得到這個工作?
編輯:找出它爲什麼崩潰;我忘記了我在IB中添加了一個segue到我完成的按鈕。這導致內存問題並導致崩潰。
編輯2:這將關閉兩個視圖控制器回基地/第一視圖控制器。它雖然不給我任何動畫。我可以解散當前的VC,不用動畫,並用動畫解僱中間的VC,但我在轉換之前簡單地看到了中間的VC。如果可能的話,我更喜歡從當前的VC到基本的VC。
無提示在控制檯上,當你的設備上運行呢?當你構建它時,來自xcode的任何警告? – 2012-02-23 21:12:54
nope,當我在ipad上運行它時,控制檯中沒有崩潰信息。我注意到xcode 4.2在崩潰時反饋的是以前的版本。 =/ – Padin215 2012-02-23 21:14:57
如果你的第一個viewcontroller是一個導航控制器,你可以使用'popToRootViewControllerAnimated:'。喜歡改變它? – 2012-02-23 21:35:34