ios - 通过两个 ViewController 传输数据

标签 ios swift uitableview

我有一个应用程序,其中有三个分层的 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,它通过 segue 连接到 MemberViewController

问题

我怎样才能将俱乐部的成员转移到 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 推送到另一个时,将调用此方法。所以你可以将你的“成员”从“MemberViewController”传递到“ViewController”

关于ios - 通过两个 ViewController 传输数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51666486/

相关文章:

ios - 从 Swift 中的另一个类访问一些值

ios - 改变tableHeaderView框架,tableview的contentSize每次增加0.5

ios - 可以区分用户滚动和编程滚动吗?

xcode - 如果没有快速到达一个语句,如何停止代码

ios - 当 UITableView 完全重新加载时

ios - iPad 搜索显示 Controller 从第二个单元格开始显示结果

ios - 没有GPS如何获取位置?

android - 果酱 UIBuilder 不见了?

swift - 无法将 NSNumber 类型的值转换为预期的参数类型 NSNumber

ios - UIPinchGestureRecognizer 触发两次