Я делаю экран регистрации, на последнем экране у меня есть кнопка с надписью «продолжить», которая должна закрывать экран регистрации. Экран включения - это контроллер представления коллекции с ячейками на каждой странице. Пожалуйста, не стесняйтесь просить разъяснений. Я не знаю, что еще добавить.
Спасибо
Редактировать
Так что я реализовал ответ пользователя Francesco Deliro, первая проблема заключалась в том, что я случайно добавил делегат = self в viewDidLoad (). Я исправил это, но все же viewController не закрывает глаза.
Мой код выглядит следующим образом в моей ячейке viewController для элемента:
let loginCell = LoginCell()
loginCell.delegate = self
Вот расширение
extension TutorialViewController: LoginCellDelegate {
func didCompleteOnboarding() {
print("I should dimiss")
self.dismiss(animated: true, completion: nil)
}
Разве мне не нужно вызывать эту функцию где-нибудь в классе, просто оставьте ее вне основного класса.
Редактировать 2
Вот как я связал свое действие кнопки с оригинальным
@objc func continueTapped() {
...
continueButton.transform = CGAffineTransform(scaleX: 0.5, y: 0.5)
UIView.animate(withDuration: 1.0, delay: 0, usingSpringWithDamping: 0.5, initialSpringVelocity: 1, options: .allowUserInteraction, animations: { [weak self] in
self?.continueButton.transform = .identity
let transition = CATransition()
transition.duration = 0.5
transition.type = CATransitionType.push
transition.subtype = CATransitionSubtype.fromRight
transition.timingFunction = CAMediaTimingFunction(name:CAMediaTimingFunctionName.easeInEaseOut)
self?.window!.layer.add(transition, forKey: kCATransition)
self?.delegate?.didCompleteOnboarding()
}, completion: { (success) in
token = true
defaults.set(token, forKey: "DidSee")
})
}