在我的應用程序中,我有一個RootViewController(UIPageViewController),一個FirstController(UIViewController)和一個SecondController(UIViewController)。 兩個視圖內的兩個UIViewControllers滾動RootViewController。UIPageViewController委託方法不被調用
在我RootViewController.h:
@interface RootController : UIPageViewController <UIPageViewControllerDataSource, UIPageViewControllerDelegate>
但是,當我不同意見的委託方法之間滾動,如:
-(void) pageViewController:(UIPageViewController *)pageViewController didFinishAnimating:(BOOL)finished previousViewControllers:(NSArray *)previousViewControllers transitionCompleted:(BOOL)completed
不叫。 爲什麼?有人能幫我嗎?先謝謝你。
我只是做了一些測試,因爲我有頁面視圖控制器是它自己的dataSource。如果你嘗試在viewDidLoad中設置dataSource,你的委託方法將永遠不會被調用。但是,如果在調用super init方法後執行自己的init並設置dataSource,則會調用委託方法。我不喜歡重寫init,所以我會切換到容器視圖策略,但認爲我會讓其他人知道這是一種解決方法 –