내 응용 프로그램에는 RootViewController (UIPageViewController), FirstController (UIViewController) 및 SecondController (UIViewController)가 있습니다. 2 개의 UIViewController 내의 두 개의보기가 RootViewController을 스크롤합니다.UIPageViewController 대리자 메서드가 호출되지 않았습니다.
내 RootViewController.h에서:
@interface RootController : UIPageViewController <UIPageViewControllerDataSource, UIPageViewControllerDelegate>
을하지만 같은 다른보기 대리자 메서드를 스크롤 할 때 :
-(void) pageViewController:(UIPageViewController *)pageViewController didFinishAnimating:(BOOL)finished previousViewControllers:(NSArray *)previousViewControllers transitionCompleted:(BOOL)completed
호출되지 않습니다. 왜? 누군가 나를 도울 수 있습니까? 미리 감사드립니다.
페이지 뷰 컨트롤러를 자체 데이터 소스로 사용하면서 테스트를 수행했습니다. viewDidLoad에서 dataSource를 설정하려고하면 대리자 메서드가 호출되지 않습니다. 그러나 자신의 init을 수행하고 super init 메소드를 호출 한 후에 dataSource를 설정하면 위임 메소드가 호출됩니다. 나는 컨테이너 뷰 전략으로 전환 할 것이므로 init을 재정의하는 것을 좋아하지 않지만 다른 사람들에게 그 하나의 해결 방법이 있다는 것을 알릴 것이라고 생각했다. –