Мой код настолько сложен, что я собираюсь немного его минимизировать.
У меня есть tableviewController с двумя ячейками и кнопкой (кнопка не в ячейке). Я меняю действие кнопки в соответствии с выбранной ячейкой:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if indexPath.row == 0{
self.botButton.addTarget(self, action: #selector(self.showA), for: .touchUpInside)
else{
self.botButton.addTarget(self, action: #selector(self.showB), for: .touchUpInside)
}
botButton - это выход моей кнопки
Это мои кнопки действий:
@objc func showA(){
let showParcelsViewController = self.storyboard?.instantiateViewController(withIdentifier: "showA") as! showAVC
self.navigationController?.pushViewController(showParcelsViewController, animated: true)
}
@objc func showB(){
let decribeland = self.storyboard?.instantiateViewController(withIdentifier: "showB") as! showBVC
self.navigationController?.pushViewController(decribeland, animated: true)
}
При загрузке страницы, если я выбираю строку и затем нажимаю кнопку, она работает безупречно. Но, например, если я выбираю 1.row, затем меняю выбранную строку на 2.row и нажмите кнопку, View нажимает Контроллер просмотра первой строки ( showAV C), а затем быстро нажимает контроллер просмотра второй строки (showBV C).
Как я могу это исправить?