gpt4 book ai didi

swift - 呈现的 View Controller 更改主视图的值

转载 作者:搜寻专家 更新时间:2023-11-01 05:37:54 24 4
gpt4 key购买 nike

我有两个 View Controller 。

比方说 VC1 和 VC2,我正在呈现来自 VC1 的 View VC2 并发送一个 NSMutableArray。像这样:

let vc2 = VC2()
vc2.array = self.someArray
self.presentViewController(vc2, animated: true, completion: nil)

我编写了一个委托(delegate),在发生变化时通知 VC1。但是,当 VC2 更改数组的值并在 VC1 处关闭数组时,它会自动更改。我只想在调用委托(delegate)方法时更改它。

我想不通。这没有意义。

抱歉英语不好。

祝你有美好的一天。

最佳答案

NSMutableArray 被称为可变 是有原因的。它可以改变。当您说 vc2.array = self.someArray 时,这是对同一可变数组的引用,而不是新副本。

要么使用 .copy() 创建副本,要么只使用不可变的常规 Swift 数组(例如 [Int])。

关于swift - 呈现的 View Controller 更改主视图的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34669256/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com