【发布时间】:2016-10-17 18:58:59
【问题描述】:
将项目添加到一个 VC 上的数组然后使用“准备转场”将数组转移到另一个 VC 的最佳方法是什么?到目前为止,这是我设法提出的:(VC1)
var items: [String] = ["Hello"]
(VC2):
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
var destViewController: ViewController = segue.destination as! ViewController
destViewController.items = [textField.text!]
items.append(textField.text!)
}
在 VC2 上出现一个错误,指出“使用未解析的标识符”行
items.append(textField.text!)
【问题讨论】:
-
直接使用destViewController.items.append(textField.text!)
-
我需要删除
destViewController.items = [textField.text!]并替换为destViewController.items.append(textField.text! -
最后两行
-
当你说
items.append时,它会查看 VC2 的属性,因为它找不到任何它不知道如何处理的东西。这是面向对象编程的定义。认为美妙之处在于,如果您创建另一个对象,您可以对其自身调用它的属性,这样destViewController.items.apped(textField.text!)就会为您工作。