Добавьте delegate
в класс ячейки (вне класса ячейки) и объявите переменную внутри класса:
protocol CellSelectedDelegate { //Name them as you want
func cellSelected()
}
class TableCell: UITableViewCell {
var delegate: CellSelectedDelegate?
}
Затем в ячейке didSelectItem
:
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
delegate?.cellSelected()
}
Теперь перейдите к классу контроллера , где у вас есть методы tableView datasource
и delegate
(при условии, что они находятся в классе контроллера, а не в другом представлении), и добавьте это в cellForItem method:
cell.delegate = self
И последняя часть, реализовать метод custom delegate
в классе контроллера:
extension YourController: CellSelectedDelegate {
func cellSelected() {
//Present next controller here
}
}