为什么在Swift中发生了“使用未声明的类型leftViewController”?

时间:2015-10-07 14:32:48

标签: iphone swift

为什么我在Swift中运行时会出现错误Use of undeclared type leftViewController

var centerContainer: MMDrawerController?
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    // Override point for customization after application launch.
    _ = self.window!.rootViewController

    let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)

    let centerViewController = mainStoryboard.instantiateViewControllerWithIdentifier("ViewController") as! ViewController

    let leftViewController = self.mainStoryboard?.instantiateViewControllerWithIdentifier("leftViewController") as! leftViewController

    let rightViewController = mainStoryboard.instantiateViewControllerWithIdentifier("rightViewController") as! rightViewController

    let leftSideNav = UINavigationController(rootViewController: leftViewController)
    let centerNav = UINavigationController(rootViewController: centerViewController)
    let rightNav = UINavigationController(rootViewController: rightViewController)

    centerContainer = MMDrawerController(centerViewController: centerNav, leftDrawerViewController: leftSideNav,rightDrawerViewController:rightNav)

    centerContainer!.openDrawerGestureModeMask = MMOpenDrawerGestureMode.PanningCenterView;
    centerContainer!.closeDrawerGestureModeMask = MMCloseDrawerGestureMode.PanningCenterView;

    window!.rootViewController = centerContainer
    window!.makeKeyAndVisible()


    return true
}

1 个答案:

答案 0 :(得分:0)

您必须将leftViewControllerrightViewController投射到UIViewController(而不是视图控制器实例的名称):

let leftViewController = self.mainStoryboard?.instantiateViewControllerWithIdentifier("leftViewController") as! UIViewController
let rightViewController = mainStoryboard.instantiateViewControllerWithIdentifier("rightViewController") as! UIViewController