【问题标题】:Issue with 'as' between Xcode versionsXcode 版本之间的“as”问题
【发布时间】:2015-03-26 17:23:14
【问题描述】:

我的以下代码在 Xcode 6.2 上编译没有问题:

let rootViewController = navController.viewControllers[0] as NoticiasTableViewController

如果我使用 Xcode 6.3 beta 对其进行测试以防止将来出现问题,我会收到以下错误:

将“as”替换为“as!”

如果我按照建议将as 替换为as!,那么Xcode 6.2 给了我一个错误:

let rootViewController = navController.viewControllers[0] as! NoticiasTableViewController

“as”之后的预期类型

因此,在 Xcode 的两个版本之一中,我无法编译源代码。

我该如何解决?

【问题讨论】:

    标签: ios xcode swift


    【解决方案1】:

    这两个版本都可以编译。

    let rootViewController = ( navigationController!.viewControllers[0] as? NoticiasTableViewController )!
    

    【讨论】:

    • 如果我使用你的代码不起作用。我将其替换为let rootViewController = ( navigationController.viewControllers[0] as? NoticiasTableViewController )!(请注意,我删除了一个感叹号)。
    【解决方案2】:

    Swift 仍处于发展阶段。 Xcode 6.3 已经使用了 Swift 1.2,所以如果你想使用 Swift 1.2 的新特性,你必须使用 beta 版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-20
      • 2014-02-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多