2015-11-10 112 views
0

我有一些將兩個ViewController推送到NavigationController堆棧的代碼。這是因爲我想打開菜單的「子菜單」視圖。將多個ViewController推送到NavigationController堆棧時的iOS委託問題

let menuVC = storyboard!.instantiateViewControllerWithIdentifier("menuView") as! MenuTableViewController 
      menuVC.delegate = self 

let menuSubVC = storyboard!.instantiateViewControllerWithIdentifier("menuViewSub") as! SubscriptionsTableViewController 
      menuSubVC.delegate = menuVC 

      controllers?.append(menuVC) 
      controllers?.append(menuSubVC) 

navigationController?.setViewControllers(controllers!, animated: true) 

正如你可以在代碼中看到的,有一些代表參與了這個。在menuSubVC一個方法調用menuVC的委託方法,讓是我一個錯誤,當我試圖將ImageView的出口設置新的空圖像:

allCheckmark.image = UIImage() 

這是爲什麼不工作?當我打開菜單,然後打開子菜單時,它工作的很完美,但如果我用上面的代碼將它們都推到堆棧上,它就無法工作。

回答

0

當你將兩者都壓入堆棧時,subMenuVC在下面,所以視圖沒有加載,這意味着沒有設置IBOutlets。

+0

是否可以加載視圖? –

+0

@LordVermillion你嘗試手動調用viewDidLoad()嗎? –

相關問題