自定义表视图以查看不同的视图控制器

时间:2015-03-04 15:24:41

标签: xcode uitableview swift segue

有没有办法可以标记每个单独的单元格,并让它们对不同的ViewController执行segueWithIdentifier?目前,编码只让我得到一个tableview(calc)。如果我可以让每个单独的单元到达Casing Capacity VC,Open Hole Capacity VC等,这将是很好的。

 class searchtechData : UITableViewController, UISearchBarDelegate, UISearchDisplayDelegate {

        var calculations = [Formulas]()
        var filteredFormulas = [Formulas]()
        override func viewDidLoad() {

            self.calculations = [Formulas(category:"Capacity", name:"Open Hole Capacity"),
                Formulas(category:"Capacity", name:"Casing Capacity"),
                Formulas(category:"Hard", name:"Multiple String Annular Capacity"),
            self.tableView.reloadData()

    }

泰伯维

        override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
            let cell = self.tableView.dequeueReusableCellWithIdentifier("Cell") as UITableViewCell
            var forumulas : Formulas

            if tableView == self.searchDisplayController!.searchResultsTableView {
                forumulas = filteredFormulas[indexPath.row]
            } else {
                forumulas = calculations[indexPath.row]
            }
            cell.textLabel!.text = forumulas.name
            cell.accessoryType = UITableViewCellAccessoryType.DisclosureIndicator
            return cell

        }

嘲笑计算

     override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
            self.performSegueWithIdentifier("calc", sender: tableView)

        }

1 个答案:

答案 0 :(得分:1)

如果要根据公式执行segue,则必须根据公式名称存储segue标识符inss或名称segues。然后在didSelectRow中为索引路径执行以下操作:

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
  var forumulas : Formulas

  if tableView == self.searchDisplayController!.searchResultsTableView {
       forumulas = filteredFormulas[indexPath.row]
     } else {
       forumulas = calculations[indexPath.row]
     }

  self.performSegueWithIdentifier(forumulas.name, sender: tableView)
}