2011-11-28 49 views
1

我有一個模式視圖與按鈕,並點擊我添加一個全屏視圖控制器。在ios 4.3 sdk中,當我要求(並且使用推/彈出控制器方法以及使用present/dismiss modalViews)時,它被解散。在新的ios 5 sdk中,它無法退出,我的viewController的parentViewController爲零,我被卡住了。 有什麼建議嗎?沒有任何工作從屏幕上刪除UIViewController

添加代碼:

myTypeController* vc = [[myTypeController alloc] initWithSomeData:myData]; 
vc.hidesBottomBarWhenPushed = YES 
//This way 
//[self.parentViewController presentModalViewController:vc animated:NO]; 
//Or that 
[self.parentViewController.navigationController pushViewController:vc animated:YES]; 
[vc release]; 

和常規的方法將其移除

[self.parentViewController dismissModalViewControllerAnimated:YES]; 

或 [self.navigationController popViewControllerAnimated:YES];

+3

我們需要看到的代碼... – TigerCoding

回答

3

的iOS 5,您需要使用presentingViewController:

if ([currentView parentViewController] != nil) 
{ 
    // iOS 4 
    self.isDismissingView = YES; 
    [[currentView parentViewController] dismissModalViewControllerAnimated:animated]; 
} 
else if ([currentView presentingViewController] != nil) 
{ 
    // iOS5 
    self.isDismissingView = YES; 
    [[currentView presentingViewController] dismissModalViewControllerAnimated:animated]; 
} 

此處瞭解詳情:http://omegadelta.net/2011/11/04/oh-my-god-they-killed-parentviewcontroller/

+0

所有正確的,謝謝,它的作品。 –

1

使用下面的代碼以關閉模式視圖

[self dismissModalViewControllerAnimated:YES]; 
+0

不,我需要關閉它本身,而不是從父視圖控制器。問題已經得到解答。 –

+0

我不知道爲什麼沒有人知道這個工程。 – NJones