2015-05-12 4 views
0

Я хочу позвонить в мой viewController с другого viewController. Я получил ошибку, как показано ниже:Как вызывать протокол из другого диспетчера представлений?

Тип «Hello» не соответствует протоколу «loginpageVCDelegate»

Вот мой протокол в loginpageVC

protocol loginpageVCDelegate { 
    func onLoginFacebook(loginViewController : loginpageVC!) 
} 

А вот как я это называю

class Hello : UIViewController, loginpageVCDelegate { 
    .... 
} 

Что я сделал не так? Как я могу это исправить?

+0

В вашем входе в систему view, в методе, где после входа в систему вы хотите сообщить/уведомить класс Hello, что класс hello должен выполнить некоторую задачу с помощью метода onLoginFacebook. Вы должны установить делегат в VC входа в систему как helloObject.delegate = self. – Amit89

ответ

1

Вы не должны называть его здесь, но вместо того, чтобы осуществить это:

class Hello : UIViewController, loginpageVCDelegate { 
    func onLoginFacebook(loginViewController: loginpageVC!) { 

    } 
} 
+0

, но я уже реализую это на loginpageVC, мне нужно переопределить на Hello? –

+0

Объявление протокола говорит, что указанный класс реализует все методы из протокола. Если вам не нужно просто удалить объявление протокола из Hello – Azat

+0

Мне нужен этот протокол, мне нужен, как я могу назвать этот протокол без ошибок? –

1

Для реализации функции из вашего протокола дополнительного, измените протокол в loginpageVC для:

@objc protocol loginpageVCDelegate { 
    optional func onLoginFacebook(loginViewController : loginpageVC!) 
} 
Смежные вопросы