0

私は とviewController を持っていcontainerView andUIPageViewControllerます。

editProfile メソッドを呼び出していますが、parentNewCarRequestVCには渡されません。しかし、アクションを作成すると、それはparentNewCarRequestVCに渡されます。したがって、画面が開始したらparentViewを初期化する方法を教えてください。

私の問題をうまく説明できなかったら、申し訳ありません。

override func viewDidAppear(animated: Bool) {
    editingProfile()
}

func editingProfile(){
    if let parentVC = self.parentViewController as? UIPageViewController{
        if let parentNewCarRequestVC = parentVC.parentViewController as? NewCarRequestViewController{

            print("DONE")
        }
    }
}
4

2 に答える 2

0

メソッド ID viewDidLoad を呼び出します。viewWillAppear で呼び出したい場合は、viewDidLoad で初期化し、

parentNewCarRequestVC = parentVC.parentViewController として? viewWillAppear の NewCarRequestViewController。

于 2015-12-03T13:01:50.177 に答える
0

あなたの仮定は間違っているに違いありません。これを行う:

func editingProfile(){

   print(self.parentViewController)
   print(self.parentViewController.parentViewController)

    if let parentVC = self.parentViewController as? UIPageViewController{
        if let parentNewCarRequestVC = parentVC.parentViewController as? NewCarRequestViewController{

        print("DONE")
    }
}

}

両方のプリントのデバッガ出力を見せてください。

于 2015-12-03T12:42:52.630 に答える