Как передать выборочно данные Json на другой контроллер

swift

#1

Здравствуйте. Буду очень благодарен за помощь.

Есть два контроллера, во втором я получаю данные json в таблице. Теперь я хочу нажатием на ячейку поставить checkmark и что бы выбранные ячейки отобразились на первом контроллере якобы как избранные. Но никак не получается.


#2

Вот пример, можете адаптировать под свои нужды

protocol YourDelegate: AnyObject {
    func didSelectData(value: Int)
}

class VC2 {
    let data = [1, 2, 3, 4, 5]
    
    // Method using closure
    var completion: ((Int) -> Void)?
    // Method using delegate
    weak var delegate: YourDelegate?
    
    func select(index: Int) {
        let value = data[index]
        completion?(value)
        delegate?.didSelectData(value: value)
    }
}


class VC1: YourDelegate {
    func didSelectData(value: Int) {
        print("FROM DELEGATE: ", value)
    }
    
    func push(vc: VC2) {
        vc.delegate = self
        vc.completion = { print("FROM CLOSURE: ", $0) }
    }
}

let vc1 = VC1()
let vc2 = VC2()

vc1.push(vc: vc2)

vc2.select(index: 3)

#3

Опередил :slight_smile:


#4

Да это на столько частый вопрос тут, что пора заготовить ответ)