gpt4 book ai didi

iOS - 显示来自 tableView didSelect 的信息

转载 作者:行者123 更新时间:2023-11-28 16:11:42 26 4
gpt4 key购买 nike

我目前有一个 tableView,当单元格被按下时,我想显示某些数据。 tableView 当前有 2 个单元格“Set One”、“Set Two”。

如果标题为“Set One”的单元格选择了,那么我希望下一个 View Controller 显示该单元格的数据。

这是来自 Core Data 的数据:

// MusicSet One
defaultMusicSet!.uri = "spotify:track:1puJlKuYGH58SAFgXREUpE"
defaultMusicSet!.duration = 30.0
defaultMusicSet!.starttime = 40.0
defaultMusicSet!.xfade = 10.0
defaultMusicSet!.voiceover = "1.25s Next Up.mp3"

// MusicSet Two
defaultMusicSet!.uri = "spotify:track:59XO64Te17WcmnmMQXQbOj"
defaultMusicSet!.duration = 30.0
defaultMusicSet!.starttime = 34.75
defaultMusicSet!.xfade = 10.0
defaultMusicSet!.voiceover = "1.25s Rest.mp3"

在 ViewController 中,我有名为“txtUri”、“txtDuration”等的文本字段。现在,如果我按下第一个单元格,我想只显示//MusicSet One 数据,如果我按下第二个单元格,它也一样将只显示//MusicSet 两个数据。

我知道代码必须进入 tableView (didSelect),但如何显示某些信息我不是 100% 确定如何做到这一点?

这行不通,但我知道我需要这样的东西?或类似的……

let musicData: playViewController?

musicData?.txtUri.text = Music.DefaultMusicSet.uri

任何帮助都会很棒!

最佳答案

  1. 将数据 MusicSet 添加到数组中:

    var arrMusicSet:[[String:AnyObject]]! = []
  2. 创建从表单元格到 View Controller 的 Segue。

  3. 在 IBInspector 中设置 Segue 标识符。

  4. 现在当您按下单元格时,segue 将被触发,不需要 didSelectRowAtIndexPath

  5. 现在根据 prepareForSegue 方法中的选定行获取 MusicSet:

    // MARK: - Navigation

    override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "MySegueIndentifier" {
    if let destVC = segue.destinationViewController as? MyViewController {

    let selected = self.tableview.indexPathForSelectedRow!.row
    destVC.musicSet = arrMusicSet[selected]
    }
    }
    }
  6. 在 View Controller 中定义一个变量,它将占用转发的 musicSet。

    var musicSet: MusicSet!
  7. 现在从这个 musicSet 为您的标签赋值。

关于iOS - 显示来自 tableView didSelect 的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39472610/

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