有没有办法可以标记每个单独的单元格,并让它们对不同的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)
}
答案 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)
}