Swiftdynamic投射UIPageViewController失败

我试图把我的window.rootViewController作为一个UIPageViewController,但任何时候我访问我定义它的类属性炸毁与swift dynamic cast failed 。 我的故事板有一个UIPageViewController是最初的场景。

PageViewController只是UIPageViewController的一个子类

 class AppDelegate: UIResponder, UIApplicationDelegate, UIPageViewControllerDataSource { var window: UIWindow! var pageViewController: PageViewController { return window.rootViewController as PageViewController } func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: NSDictionary?) -> Bool { pageViewController.dataSource = self return true } } 

主要问题实际上是因为我是UIPageViewController的子类,我不得不将自定义类添加到我的故事板内的ViewController。 起初我认为,因为PageViewController是一个UIPageViewController,而我只是将rootViewController投射到一个PageViewController,它应该已经工作。 通过添加自定义类它解决了我的问题。

我也没有进行子类化testing,它与指定自定义类的工作。