我正在Swift游乐场上工作,该游乐场在主文件旁边的Sources文件夹中包含多个文件。当我在主文件中键入某些内容(例如“UI”)时,我会收到预期的自动填充建议。但是,当我在Sources文件夹中的文件中执行相同操作时,我会收到一个“哑”自动完成菜单,如此问题所示:Xcode 9 Autocomplete Not Working 100% - Partially Working
我已尝试按照上述问题的建议删除DerivedData
,甚至完全重新安装Xcode。然而,问题并没有消失。我创建了一个新的游乐场,以确保它不是特定于这个项目,并且会出现同样的问题。
编辑:我在不同的Mac上尝试了同样的事情并且观察到了同样的问题。我想这只是Xcode中的一个与此特定安装或项目无关的错误。
答案 0 :(得分:20)
为了启用自动完成功能,您可以将Playground嵌入常规Xcode项目(例如iOS应用程序)中。我建议为此目的创建一个虚拟项目。只需将您的游乐场拖放到这个虚拟项目中,并确保选中“添加到目标”。
然后你可以导航到
Target -> Build Phases -> Compile Sources -> + -> Add other
并添加源文件夹中的所有文件。请注意,您不需要实际复制文件,参考就足够了。
在此过程之后,所有源文件都是针对此虚拟目标构建的,您可以像往常一样使用自动完成。据我所知,这是调试Playgrounds的最佳实践。无论如何,我很好奇,如果有更简单的方法来实现这一点。
答案 1 :(得分:0)
Swift playgroundbooks不支持自动完成功能。尝试在常规的Swift游乐场中编写代码,然后将代码移到playgroundbook上。
答案 2 :(得分:0)
每次都对我有用, 重新启动/开始->打开任何现有的Xcode项目(使用自动完成功能)->打开Playground
自动完成功能将照常运行