Swift - 将数据传回上次打开的视图控制器

Swift - Pass data back to last opened view controller

我正在开发一款用户可以创建锦标赛的应用程序。 我现在要做的是当用户点击 CreateTournamentViewController 内的按钮 "Select players" 时,应该弹出 PlayersTableViewController

然后用户选择所有玩家。在他完成并点击 "Done" 后,PlayersTableViewController 应该关闭并将数据传回 CreateTournamentViewController

现在我的问题是:实现此目标的最佳方法是什么?

我会这样做:CreateTournamentViewController 有一个数组 var players = [Player]。选择 PlayersTableViewController 中的玩家后,我将设置此玩家数组:players = createTournamentViewController.players.

但这真的是最好的方法吗?

感谢您的帮助。

您可以使用 Delegate 模式来执行此操作,您的 tournamentViewController 可以是您 PlayersTableViewController 的委托,当用户 select 他的玩家时,您可以通过一种方法,例如 func playersWasSelected(players:[player]),

希望对你有帮助