Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Swift如何从CollectionviewCell中分离indexPath值?_Ios_Swift_Segue_Uisplitviewcontroller - Fatal编程技术网

Ios Swift如何从CollectionviewCell中分离indexPath值?

Ios Swift如何从CollectionviewCell中分离indexPath值?,ios,swift,segue,uisplitviewcontroller,Ios,Swift,Segue,Uisplitviewcontroller,我希望能够在我的DetailViewController中重新加载该值。如何对所选的indexPath进行分段,以便在下一个视图控制器中调用该值 在mydidSelectItemAt中,我有: let monsters: Monsters! let mons: [Monsters] = Data().mons monsters = mons[indexPath.row] self.performSegue(withIdentifier: "DetailVC", sender: monste

我希望能够在我的
DetailViewController中重新加载该值。
如何对所选的indexPath进行分段,以便在下一个视图控制器中调用该值

在my
didSelectItemAt
中,我有:

let monsters: Monsters!

let mons: [Monsters] = Data().mons
monsters = mons[indexPath.row] 

self.performSegue(withIdentifier: "DetailVC", sender: monsters)

您可以在
DetailViewController
中创建
monster
属性,然后在调用
prepare(对于segue:)

然后在执行segue的VC中,为要基于
indepath
分配的
selectedMonster
创建一个属性:

var selectedMonster:Monster?
然后,当用户选择单元格时:

selectedMonster = mons[indexPath.row] 
在同一个VC中,当调用
performsgue(with identifier:)
时,将调用此方法:

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier == "DetailVC" {
        let detailVC = segue.destination as! DetailViewController
        detailVC.monster = selectedMonster
    }
}
您可能需要检查如何调用
performsgue(带有标识符:)
,通常您希望发送者是
自己,即:

performSegue(withIdentifier: "DetailVC", sender: self)

您可以在
DetailViewController
中创建
monster
属性,然后在调用
prepare(对于segue:)

然后在执行segue的VC中,为要基于
indepath
分配的
selectedMonster
创建一个属性:

var selectedMonster:Monster?
然后,当用户选择单元格时:

selectedMonster = mons[indexPath.row] 
在同一个VC中,当调用
performsgue(with identifier:)
时,将调用此方法:

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    if segue.identifier == "DetailVC" {
        let detailVC = segue.destination as! DetailViewController
        detailVC.monster = selectedMonster
    }
}
您可能需要检查如何调用
performsgue(带有标识符:)
,通常您希望发送者是
自己,即:

performSegue(withIdentifier: "DetailVC", sender: self)

非常感谢你。这件事困扰了我好长时间了谢谢你。这困扰了我好长时间了