【问题标题】:How to send information from custom cells to a view controller?如何将信息从自定义单元格发送到视图控制器?
【发布时间】:2016-12-03 08:42:11
【问题描述】:

我目前正在尝试使用 Swift 2 将一些信息从自定义单元格发送到 Xcode 7 中的下一个视图控制器。

如果信息来自标签等,我可以很好地发送信息,但我不能从单元格发送信息,因为我无法获取用户点击的特定单元格。我试图从教程中获取有关如何获取索引路径的信息,但总是出错。

Layout of View Controllers

Code for main VC and error

关于如何解决这个问题的任何想法?

【问题讨论】:

  • 您的 segue 与您的单元格连接了吗?
  • 天哪,谢谢!!不是没有,是和背景挂钩的。 XD
  • 我真是个白痴lmao
  • 不相关,但考虑使用一个自定义类而不是三个数组作为数据源。多个数组非常容易出错,因为您必须确保所有数组中的项目数相同。并始终使用本机 Swift 集合类型而不是 Foundation NS(Mutable)... 对象。你扔掉了关键的类型信息。

标签: ios uiviewcontroller swift2 custom-cell


【解决方案1】:
  1. 您需要创建像ViewControllerExpanView 这样的segue 确保 不为UITableViewCellExpanView
  2. 你的tableView.allowsSelection = true 并设置tableView.delegate = self
  3. 这样隐含didSelectRowAtIndexPathtableView的方法。

    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
         self.performSegueWithIdentifier("exapanView", sender: indexPath)
    }
    
  4. 像这样实现prepareForSegue方法

    func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "exapanView" {
        let selectedIndexPath = sender as! NSIndexPath
        let nameString = self.name.objectAtIndex(selectedIndexPath.row)
    }
    }
    

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多