#swift #uibutton #show #uistoryboardsegue
#swift #uibutton #показать #uistoryboardsegue
Вопрос:
У меня есть одна кнопка UIButton в tableviewcell, которая установила «show segue» в MainStoryboard. И я хочу нажать эту кнопку и запустить новый контроллер, так как я могу это сделать?
Комментарии:
1. Создайте обратный вызов либо делегируйте для получения действия кнопки, после чего выполните обмен данными между ViewControllers.
Ответ №1:
// есть много способов сделать это, 1 из способов: // возьмите выход кнопки в tableviewcell
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell2 : cellname = tableView.dequeueReusableCell(withIdentifier: "cellname") as! cellname
cell2.addAddressButton.addTarget(self, action: #selector(openNewVC), for: .touchUpInside)
return cell2
}
func openNewVC(){
self.performSegue(withIdentifier: "Identifiername", sender: self)
}
Комментарии:
1. или вы можете назначить делегатов и выполнить задачу
2. О .. это то, что мне нужно.
Ответ №2:
Пожалуйста, используйте пользовательский делегат в ячейке tableview,
Для этого перейдите по ссылке ниже,
https://medium.com/@jamesrochabrun/implementing-delegates-in-swift-step-by-step-d3211cbac3ef
Теперь в контроллере представления внутри функции делегирования используйте
performSegue(withIdentifier: "identifier", sender: self)