如何在XCode 8 Playgrounds中使用Swift 2.3?

33

我有一个用Swift 2.2编写的游乐场项目,我想利用时间轴可视化和尝试Xcode 8 beta中引入的新调试功能。默认情况下,Xcode 8 beta在Playgrounds中使用Swift 3,我找不到更改它的方法。不幸的是,将我的代码更新为Swift 3不是一种选择,因为我的代码将在具有Swift 2.2环境的服务器上编译。


当你说游乐场项目时,是指 .playground 还是 .xcodeproj - Ike10
3
我的意思是 .playground - Misha Svyatoshenko
3个回答

29

很遗憾,根据苹果公司的说法,这是不可能的:

例如,Xcode中的Playgrounds只适用于Swift 3,并且iPad上的Swift Playgrounds应用程序也使用Swift 3。Xcode项目模板都使用Swift 3,并且所有文档都以适合Swift 3的格式呈现。

更多信息在这里


-2

你可以将你的Swift 2.2转换为Swift 2.3以在Xcode-beta 8中使用。

是的,Swift 3是默认选项,但是当你在Xcode中执行Edit > Convert > To Current Swift Syntax...时会出现以下对话框。

这还会在我的project.pbxproj中创建一个SWIFT_VERSION = 2.3的条目。

enter image description here


6
不回答如何更改Swift版本Playgrounds使用的问题。 - Maic López Sáenz
@RobLabs,这对我没有用。如果我将Playground保存为工作区,则“Edit>Convert>To Current Swift Syntax...”就可用了,但会出现“生成预览”的消息而挂起。 - Misha Svyatoshenko
2
我认为这是一个不同的情况,因为Playgrounds不包含*.pbxproj包,因此没有项目设置,所以无法设置SWIFT_VERSION = 2.3 - Misha Svyatoshenko
这肯定行不通,尝试了许多不同的方法后,没有办法告诉 Xcode 的 Playground 使用除最新版本 Swift 以外的任何版本。 - Kendall Helmstetter Gelner

-4

我在一个项目中有一个遗留的 playground(使用 xcode 7 创建),我已经迁移到了 Swift 2.3 语法和 XCode 8,我的 playground 即使仍然使用 Swift 2.3 语法也能正常工作,所以我想这是有方法的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接