Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
584 views
in Technique[技术] by (71.8m points)

ios - Swift dynamic cast failed UIPageViewController

I am trying to cast my window.rootViewController as a UIPageViewController but anytime I access the class property which I defined it blows up with swift dynamic cast failed. My storyboard has a UIPageViewController is the initial scene.

PageViewController is just a subclass of 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
    }

 }
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

The main issue actually was because I was subclassing UIPageViewController I had to add the custom class to the ViewController inside my storyboard. At first I figured that since PageViewController is a UIPageViewController, and I am just casting the rootViewController to a PageViewController, it should've of worked. By adding the custom class it fixed my problem.

I also tested by not subclassing, it worked with out specifying a custom class.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...