Делегаты со Свифтом - PullRequest
       10

Делегаты со Свифтом

0 голосов
/ 26 апреля 2018

В настоящее время у меня есть ViewController с TableView и пользовательский заголовок, содержащий кнопку возврата. Я хочу сказать из класса заголовка, что ViewController должен вернуться к предыдущему ViewController. Проблема, с которой я сталкиваюсь, состоит в том, что я соответствую протоколу, и действие кнопки получено, но отладчик не переходит к функции отклонения. Вот код:

    protocol StoresFilterHeaderViewDelegate: class {
        func onBackButtonTap();
    }
    class StoresFilterHeaderView: UICollectionReusableView {

        weak var delegate: StoresFilterHeaderViewDelegate?;
        @IBOutlet weak var lbSubcategory: UILabel!
        @IBOutlet weak var ivSubcategory: UIImageView!

        // MARK: Actions

          @IBAction func onBackToMomentDetailButtonTap(_ sender: AnyObject) {
                self.delegate?.onBackButtonTap();
                print("button pressed");
      }
    }

"нажата кнопка" печатается хорошо


class StoresFilterViewController: UIViewController, UITableViewDataSource, UITableViewDelegate, StoresFilterHeaderViewDelegate {

    func onBackButtonTap() {
        print("segueback")
    }

"segueback" не печатается

1 Ответ

0 голосов
/ 26 апреля 2018

при создании заголовка установите его делегата на себя.

headerView.delegate = self

Вы должны добавить это после инициализации headerView в StoresFilterViewController

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...