ios - 如何将信息从一个 View Controller 中的 TableView 单元格传递到另一个 View Controller ?

标签 ios iphone xcode swift ios9

所以,我有 2 个 View Controller :

  1. 一个表格 View Controller ,其中包含可以按下的俱乐部名称列表。它有一个名为 ClubsTableViewController 的自定义类。
  2. 一个 View Controller ,我将用它来显示按下的俱乐部的描述。我想重用这个 View Controller 来根据按下的球杆显示不同的信息。它有一个名为 ClubDetailViewController 的自定义类。

Two view controllers 我在 TableView Controller 的每个 TableView 单元格和第二个 View Controller 之间创建了 segue,每个 segue 都有标识符“showClubDetails”。

我在 ClubsTableViewController.swift 文件中有以下方法:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "showClubDetails" {
        let detailsController = segue.destinationViewController as! ClubDetailViewController;
        if let name = self.view.viewWithTag(1) as? UILabel {
            detailsController.clubNameString = name.text!
            detailsController.clubDescriptionString = clubDescriptions[name.text!]!
        }
    }
}

我使用此方法将从第一个 View Controller 按下的俱乐部名称传递到第二个 View Controller 。上面的代码适用于表格 View 的第一个单元格(上图中的“Amnesty International”),因为我已为其指定了标签 1。

但是,我想将按下的任何俱乐部的名称传递给第二个 View Controller ,但我不太确定如何执行此操作。 任何帮助,将不胜感激。 谢谢!

最佳答案

你的转场应该是这样的:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "showClubDetails" {

    let indexPath:NSIndexPath = tableView.indexPathForSelectedRow!

    let detailsController = segue.destinationViewController as! ClubDetailViewController;

        detailsController.clubNameString = names[indexPath.row]
        detailsController.clubDescriptionString = clubDescriptions[indexPath.row]
}

}

编辑:

indexPath 获取俱乐部的索引,然后从数组中正确发送俱乐部名称。这意味着俱乐部名称必须位于数组中(与俱乐部描述相同)。

关于ios - 如何将信息从一个 View Controller 中的 TableView 单元格传递到另一个 View Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35434395/

相关文章:

iphone - 如何在 Core Plot 中为条形图的外观设置动画?

Xcode Interface Builder 无法启动

ios - UITableView 中的二维数组

ios - firebase pod 安装的版本少于现有的最新版本

iphone - 确定ipad设备

iphone - 将字符串拆分为数组对象

ios - 将 iPhone 6 plus 定位到 iPad 应用

ios - 自定义转换给出 "Unbalanced calls to begin/end appearance transitions"错误

ios - 使用 UISearchController 自定义 UISearchBar

iphone - 用粉笔效果画线( cocoa / cocoa 触感)?