我在TableViewController
中有以下segue,每个表行都有一个Fruit对象。我想将每行的对象传递给一个视图控制器,该视图控制器显示关于连续对象的更多细节,所以我在下面编写了segue以跨视图控制器传输Fruit对象。通过故事板传递一个对象Segue
在FruitDescriptionViewController
,我无法弄清楚如何界定,将采取从该行的对象上的变量,因为它不会让我定义一个变量var chosenFruit = Fruit
,并在SEGUE,我得到的错误cannot pass type Fruit to type Fruit.type
我该如何去通过segue传递Fruit对象并将它存储在FruitDescriptionViewController
的Fruit变量中?
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "FruitDetails" {
if let indexPath = tableView.indexPathForSelectedRow {
var fruit = fruits[indexPath.row]
let controller = segue.destination as? FruitDescriptionViewController
controller?.chosenFruit = Fruit(name: fruit.name, url: fruit.url, fruitArray: fruit.fruitArray)
}
}
}
'var chosenFruit = Fruit'应该是'var chosenFruit:Fruit?' – Callam