Как определить выбор ячейки в UITableView - Swift

просто интересно, как я буду заниматься внедрением didSelectRowAtIndexPath или что-то подобное в мое приложение. У меня есть заполненный Table View с несколькими динамическими ячейками, и в основном я хочу изменить Views после выбора определенной ячейки.

Я могу обойти его в Obj-C, но в google нет ничего, чтобы помочь мне с Swift! Любая помощь будет оценена по мере того, как я все еще изучаю

Ответы

Ответ 1

Вы можете использовать didSelectRowAtIndexPath в Swift.

func tableView(tableView: UITableView!, didSelectRowAtIndexPath indexPath: NSIndexPath!) {
    NSLog("You selected cell number: \(indexPath.row)!")
    self.performSegueWithIdentifier("yourIdentifier", sender: self)
}

Для Swift 3 это

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    NSLog("You selected cell number: \(indexPath.row)!")
    self.performSegueWithIdentifier("yourIdentifier", sender: self)
}

Просто убедитесь, что вы реализуете UITableViewDelegate.

Ответ 2

Вот как мне удалось переходить из ячеек UITableView в другие контроллеры представлений после реализации cellForRow, numberOfRowsInSection и numberOfSectionsInTable.

//to grab a row, update your did select row at index path method to:

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { 
    NSLog("You selected cell number: \(indexPath.row)!");

    if indexPath.row == 1 {
        //THE SEGUE 
        self.performSegue(withIdentifier: "goToMainUI", sender: self)
    }
}

Выведет: You selected cell number: \(indexPath.row)!

Не забудьте сопоставить идентификатор вашего segue в панели рассказов с идентификатором в функции, например goToMainUI.