在swift中准备数组中的元素

我有两个viewcontrller vc1和vc2。 在vc1中是用jsonparsing的tableview,它显示了一些名字。

vc1: var names: [String] = [] // Displays name (Ana, Mike, John ....) override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! TVC cell.lable.text = name[indexPath.row] override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { let someName: vc2 = segue.destinationViewController as! vc2 someName.nameFromVC1 = //need code here } vc2: var nameFromVC1: String! 

我的目标是当表显示名称,我点击一些名称说“安娜”,我想“安娜”发送到vc2并把var nameFromVC1

你应该在vc 1中使用这样的东西:

 override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { // Prepare the destination view controller with the selected name (segue.destinationViewController as? NameDetailViewController)? .prepareForName( names[tableView.indexPathForSelectedRow!.row] ) } 

而这在你的目标视图控制器:

 func prepareForName(name: String) { self.name = name }