2015-10-16 72 views
0

我正在准备一个导航控制器,正在控制第二个表视图控制器导航栏的segue的麻烦。 This is the storyboard为导航控制器准备segue

无论如何,我需要的阵列转移到下一个表视图控制器,这是我使用这样做(显示的第一个表视图控制器上此代码)的代码:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) { 
     if (segue.identifier == "Load View") { 
      // pass data to next view 
      let indexpath: NSIndexPath = self.tableView.indexPathForSelectedRow! 
      let DestinationViewController = segue.destinationViewController as! AnswerTableViewController 
      var ArrayofArrayswithAnswerElementsTwo : [Answer] 
      var ArrayofArrayswithAnswerElements = levelsArray.map({ $0.AnswersArray }) 
      ArrayofArrayswithAnswerElementsTwo = ArrayofArrayswithAnswerElements[indexpath.row] 
      DestinationViewController.ArrayofArrayswithAnswerElements = ArrayofArrayswithAnswerElementsTwo 
     } 
    } 

当我点击一个细胞,我得到这条线上的SIGABRT错误:

let DestinationViewController = segue.destinationViewController as! AnswerTableViewController 

我知道为什么它这个(因为我做演员是表视图没有导航控制器) 我怎样才能将数据传输到那第二张桌子一边看ke eping导航栏。 帮助将不胜感激。

+2

你是从一个导航控制器推到另一个人的原因是什么?看起来像第二个导航控制器是不必要的 – JeffN

+0

原因是我想让我的取消按钮正常工作 – needshelp

回答

1

试试这个

let NavigationController = segue.destinationViewController as! UINavigationController 
let DestinationViewController = NavigationController.topViewController as! AnswerTableViewController 
// ... 
DestinationViewController.ArrayofArrayswithAnswerElements = ArrayofArrayswithAnswerElementsTwo