2012-09-07 78 views
0

我有一個視圖板A,裏面有一個導航控制器。我動態地將子視圖B添加到視圖A.子視圖B具有表視圖,並且表視圖單元具有對細節視圖的seque(推送)。當我單擊單元格時,將調用prepareForSegue方法,但絕不顯示詳細視圖。如果我將seque切換爲模態,則細節視圖將顯示在視圖A內,其中子視圖B位於該視圖中。Segue不適用於動態添加的子視圖

我想要發生的是將詳細視圖推到導航控制器上,當用戶按下詳細視圖時,它會回到視圖A並嵌入子視圖B.

下面是我用添加子視圖代碼:

if(!self.homeViewController){ 
     self.homeViewController = [self.storyboardinstantiateViewControllerWithIdentifier:@"HomeView"];   
    } 

    if(self.currentViewController != self.homeViewController) 
    {    
     [self.view insertSubview:self.homeViewController.view belowSubview:self.tabBar]; 
     [self.currentViewController removeFromParentViewController]; 
    } 

    self.currentViewController = self.homeViewController; 

回答

0

沒有看到你的代碼(和故事板),這可能是很難診斷。然而,我發現,有時候讓segues能夠正確地使用動態加載的內容是件麻煩的事情。在某些情況下,我發現使用pushViewController:animated:和popViewController:UINavigationController的動畫方法可能是更好的方法。您應該可以通過UIViewcontroller.navigationController訪問UINavigationController。

+0

我已經添加了子視圖的代碼。我想知道是否需要以編程方式進行,但希望我不必這樣做。 –

相關問題