为每个TableView单元格执行不同的segue

时间:2015-02-10 14:05:32

标签: ios swift if-statement tableview

我有一个带有几个动态单元格的填充TableView。我有一个代码,一旦一个单元被轻敲就执行一个segue,但我需要这样做,以便每个单元格执行不同的segue。有人可以帮助我,因为我正在使用的代码只是继续执行第一个segue,无论我按哪个单元格!

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    NSLog("You selected cell number: \(indexPath.row)!")
    if indexPath.row == 0
    {
        self.performSegueWithIdentifier("MoveToSignIn", sender: self)
    }
    if indexPath.row == 1
    {
        self.performSegueWithIdentifier("MoveTo2", sender: self)
    }
}

1 个答案:

答案 0 :(得分:0)

这里发生了什么(我很确定问题是这个问题)。一个表不可能有两个具有相等的section和row值的单元格。解决方案应该是这样的:

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    NSLog("You selected cell number: \(indexPath.row)!")
    if indexPath.row == 0 && indexPath.section == 0
    {
        self.performSegueWithIdentifier("MoveToSignIn", sender: self)
    }
    if indexPath.row == 0 && indexPath.section == 1
    {
        self.performSegueWithIdentifier("MoveTo2", sender: self)
    }
}

章节只会重置您的行,因此很容易混淆,因为您有5行但有两个部分或类似的部分。