В Swift, как сделать динамическую ячейку tableView доступной для выбора, чтобы при нажатии она переходила в другой tableViewController?

У меня есть tableView с динамическими ячейками, которые, когда ячейка нажата, я хочу, чтобы она передавалась другому tableViewController через переход. Я понял, как это сделать, нажав кнопку на ячейке, но не если нажать саму ячейку. Я в тупике, любая помощь будет принята с благодарностью!


person tylerD    schedule 15.02.2016    source источник
comment
это должна быть функция, которую вы ищете func tableView(_ tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath)   -  person Breek    schedule 16.02.2016
comment
Я попытался использовать функцию переопределения tableView (tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { self.dismissSearchBar() PerformSegueWithIdentifier (channelToShowSegue, sender: self)}   -  person tylerD    schedule 16.02.2016
comment
Не сработало означает, что didSelectRowAtIndexPath не получил вызов или внутренний performSegueWithIdentifier("channelToShowSegue", sender: self) не сработал?   -  person Breek    schedule 16.02.2016
comment
Когда ячейка нажата, PerformSegueWithIndentifier ничего не делает. Но когда PerformSegueWithIdentifier вызывается под IBAction, он работает.   -  person tylerD    schedule 16.02.2016
comment
Есть ли причина, по которой вы не просто перетаскиваете элемент управления из ячейки в контроллер представления в IB? Затем переход произойдет автоматически, и вам просто нужно настроить любые требования к данным в prepareForSegue.   -  person Michael    schedule 16.02.2016
comment
Я могу получить IBOutlet, только если я контролирую + перетаскиваю. Не IBAction для вызова перехода.   -  person tylerD    schedule 16.02.2016
comment
Вы не перетаскиваете код — вы перетаскиваете из ячейки в другой контроллер представления. Затем вы получите всплывающее окно выбора перехода, в котором вы можете выбрать нужный тип перехода. Это обычный способ подключения ячеек к контроллерам просмотра, поэтому вы получаете хорошее визуальное представление в IB.   -  person Michael    schedule 16.02.2016


Ответы (1)


Выяснилось, что вы должны сначала поместить tableView.allowsSelection = true в cellForRowAtIndexPath, прежде чем вызывать DidSelectRowAtIndexPath.

person tylerD    schedule 15.02.2016