como passar dados do UIPageViewController para o ViewController filho usando delegados
Eu quero passar dados de umUIPageViewController
para um de seus filhosViewControllers
. Eu tenho um protocolo definido assim:
protocol Delegate : class{
func protocolMethod(count:Int)
}
E emUIPageViewController
:
class PageVC : UIPageViewController{
var delegate : Delegate?
var count : Int = 1
func classMethod(){
self.displayPageForIndex(5) //this controlls the tranistion to the child ViewController
self.delegate?.protocolMethod(count : self.count)
}
}
Na criança em conformidadeViewController
:
class ChildVC : UIViewController , Delegate{
func protocolMethod(count : Int){
print(count)
}
override func viewDidLoad() {
super.viewDidLoad()
let pvc = PageVC()
pvc.delegate = self
}
}
O que eu fiz emviewDidLoad
é a solução mais simplista que eu tentei, mas ainda não consegui encontrar a resposta sobre como deixar oPageViewController
saiba que a criançaViewController
é o receptor do método de protocolo. Se alguém pudesse me ajudar a fazer isso sem usar o prepareForSegue (como não há segues), isso seria muito apreciado.