TableView到使用Segues的各种viewControllers

时间:2016-01-17 15:56:42

标签: uitableview if-statement segue

我有一个表格,每个部分都有几个部分和几行。

选择时,我希望表中的每个项目都有自己的视图控制器。我有一个给定的标识符。

以下代码始终打开相同的新视图控制器,忽略我的if函数,使segue依赖于用户选择的单元格。目前我正在测试只有两个,但一旦它工作,我会添加更多。

有谁知道为什么会这样?

覆盖func tableView(tableView:UITableView,didSelectRowAtIndexPath indexPath:NSIndexPath){

    if indexPath == 1 {
        self.performSegueWithIdentifier("Belgium", sender: self)

    }
    else {
    self.performSegueWithIdentifier("France", sender: self)
    }

1 个答案:

答案 0 :(得分:1)

由于您正在将indexPath与1进行比较,因此未执行if语句。这不会在任何时间发生。

Objective-C抛出一个警告,指出不兼容的指针NSIndexPath与int比较,而swift以静默方式执行。

代码应为

if indexPath.row == 1 { // Or it can be indexPath.section == 1
    //Do Something
}