更新到Xcode 9和Swift 4

时间:2017-10-18 10:19:47

标签: ios swift xcode xcode9 swift4

我是Swift的新手(不到1年),而且我不确定如何在每年的新Xcode中更新到最新的Swift。我的项目已在Xcode 8Swift 3.2下启动。现在我升级了Xcode 9,AFAIU支持Swift 4

由于我使用Cocoapods,我显然将所有广告更新为最新版本,我认为这是正确的行为。

但是,我发现目标设置中的Swift version仍设置为Swift 3.2这究竟是什么意思?我应该将其更改为Swift 4吗?或者那就像我必须按照最低版本编写代码?

此外,我在项目中有 2个警告

enter image description here

关于 Pods ,很明显Cocoapods会解决这个问题,所以np。

我的工作区怎么样?我的目标构建正常,没有错误和警告,我不确定它为什么告诉我转换?它不应该用代码告诉文件中的确切行吗?

请描述一般的最新Swift更新的正确流程,以及如何使用每年未更新到最新Swift的一些pod 。我是否会被迫删除它们,或者像fork一样手动更新到最新的Swift?

2 个答案:

答案 0 :(得分:7)

  

升级Xcode版本,不会更改/升级您的Swift编程   语言版本。这些警告显示,您当前的Swift编程语言版本不是4.0(低于4.0即3.2)。

     

(另请注意,Xcode 9和8.3都支持Swift 3.2。您也可以使用Swift 3.2来使用Xcode 9。)

因此,如果您在Xcode 9中打开Xcode 8.x项目,则可以使用Swift 3.2版。

手动,您需要从项目构建设置更改Swift 3.2到4.0。

以下是 - 如何查看当前的Swift语言版本并将其更改为更新版本。

enter image description here

另请注意:更改快速语言后,请确保执行以下步骤:

  • 您必须更新/升级您的可可豆荚(CocoaPods)
  • 更新项目的pod libs / files(使用命令pod installpod update

为了便于迁移,请参考以下答案:

  

(Xcode)菜单:编辑►隐藏►转换为当前Swift语法

enter image description here

答案 1 :(得分:1)

您不必将项目转换为 Swift 4 Xcode 9 也支持 Swift 3.2

如果要将项目转换为 Swift 4 ,请使用:

  • 编辑 - >转换 - >当前的Swift语法

您还可以使用两个版本(例如,某些播放器尚未为Swift 4做好准备)。 在构建设置 - Swift语言版中检查/设置目标版本