Делегат TextField в отдельном классе не работает

Поэтому я пытаюсь выделить своего делегата в отдельный класс, а не размещать его в классе моей ячейки. Вот как я объявляю и инициализирую делегата:

class RegistrationTableViewController: BaseTableViewController, UITextFieldDelegate {
var textFieldDelegate: UITextFieldDelegate

//MARK: - Initialization

required init?(coder aDecoder: NSCoder) {
    textFieldDelegate = RegistrationTextFieldDelegate()

    super.init(coder: aDecoder)
}

Затем я установил его в моем общем методе настройки ячейки:

func setupBaseCellWithType(type: Constants.Registration.CellType) -> BaseCell {
    var cell: BaseCell? = nil

    if let newCell = tableView.dequeueReusableCellWithIdentifier(Constants.Registration.profileBaseRegistrationCell) as? BaseProfileCell {
        newCell.cellType = type
        newCell.setupCell()
        newCell.setTextFieldDelegate(textFieldDelegate)
        cell = newCell
    }

    return cell!
}

Проблема в том, что он никогда не затрагивает ни один из методов делегата. Когда я сделал ячейки моим делегатом, все работало замечательно, есть идеи, что здесь не так?

Редактировать: setTextFieldDelegate вызывает этот метод:

private func setTextFieldDelegates(delegate: UITextFieldDelegate) -> Void {
    for textField in textFieldArray {
        textField.delegate = delegate
    }
}

Именно так я ранее установил делегат для всех своих textFields в ячейке, поэтому я знаю, что он правильно их устанавливает, но что-то идет не так, когда я пытаюсь переместить его в другой класс.

Редактировать 2: я идиот, который бежит в плохом сне. Я только менял делегата BaseCell, а не мой PhoneNumberCellDelegate... Не стесняйтесь называть меня идиотом, если хотите.

0 ответов

Другие вопросы по тегам