我有一个应用程序,其中有三个层次tableViews
。第一个是用户所有俱乐部的tableView
。当他选择一个俱乐部时,他会进入ViewController
,在这里显示所选俱乐部的所有成员。
代码中显示如下:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let destinationVC: UIViewController
let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "memberViewController") as! MemberViewController
destinationVC = vc
let selectedRow = self.tableViewClub.indexPathForSelectedRow?.row
vc.club = clubs[selectedRow!]
}
self.navigationController?.pushViewController(destinationVC, animated: true)
}
问题
然后我可以在
MemberViewController
中访问该俱乐部的成员。现在我想再次传输数据,但这次是另一个ViewController
,它用MemberViewController
连接到segue
。问题
我怎样才能将俱乐部的成员转移到
ViewController
-通过segue连接到MemberViewController
-因为没有选中的行我可以在代码中写入。 最佳答案
在“MemberViewController”中,编写以下代码:-
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
// Create a new variable to store the instance of ViewController
if let destinationVC = segue.destinationViewController as? ViewController
destinationVC.members = members
}
}
通过segue将一个viewController推送到另一个viewController时调用此方法。因此,您可以将“成员”从“MemberViewController”传递到“ViewController”