gpt4 book ai didi

swift - didSelectRowAtIndexPath 中的数据在prepareForSegue 中不可用(swift)

转载 作者:行者123 更新时间:2023-11-30 10:05:56 25 4
gpt4 key购买 nike

我需要的数据 (selectedPlaylistToPass) 在 didSelectRowAtIndexPath 中正确显示,但在 prepareForSegue 中没有正确显示。接收 View Controller 显然也没有接收到数据。我究竟做错了什么?

    var selectedPlaylistToPass = NSString()

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let selectedPlaylist = tableData.collections![indexPath.row]
let selectedPlaylistToPass = selectedPlaylist.valueForProperty(MPMediaPlaylistPropertyName) as! NSString
print("selected: \(selectedPlaylistToPass)") //SHOWS IN CONSOLE CORRECT
performSegueWithIdentifier("playlistSongsView" as String, sender: self)
}

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
print("selected: \(selectedPlaylistToPass)") //SHOWS IN CONSOLE AS "selected: "
if(segue.identifier == "playlistSongsView") {
let vc = segue.destinationViewController as! playlistSongsViewController
vc.selectedPlaylistToPass = self.selectedPlaylistToPass as String
}
}

最佳答案

您正在 let selectedPlaylistToPass 中初始化新变量。试试这个代码

var selectedPlaylistToPass = NSString()

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let selectedPlaylist = tableData.collections![indexPath.row]
self.selectedPlaylistToPass = selectedPlaylist.valueForProperty(MPMediaPlaylistPropertyName) as! NSString
print("selected: \(selectedPlaylistToPass)")
performSegueWithIdentifier("playlistSongsView" as String, sender: self)
}

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
print("selected: \(selectedPlaylistToPass)")
if(segue.identifier == "playlistSongsView") {
let vc = segue.destinationViewController as! playlistSongsViewController
vc.selectedPlaylistToPass = self.selectedPlaylistToPass as String
}
}

关于swift - didSelectRowAtIndexPath 中的数据在prepareForSegue 中不可用(swift),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35968141/

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