今天我将我的项目更新为Swift 3.0
。
该项目与Xcode 7.3
和自动填充功能一起顺利进行
没有问题。更新到Swift 3
后,Xcode中的自动完成功能几乎消失(需要1分钟)。
自动完成功能适用于新项目,只有这个有问题。
我尝试了一般性能解决方案,例如删除"+"
上的Strings
并设置数组而不添加,但没有运气。
我尝试删除Derived Data
,清理项目
我拥有组件和模拟器部分的所有内容
我的项目使用了几个Pod
修改:
当我在打字时删除建议并用控制和空格强制它,那么它大部分时间都有效。但是当我输入时它不起作用(错误校正也是如此)。
当我安装Pod时,虽然现在每个Pod都在Swift 3中,但它要求我再次转换项目。我单击“确定”,它显示999+错误,但在生成转换时,它没有任何转换需要和“更新”(当我清理项目时错误消失了。)
谢谢
答案 0 :(得分:2)
我在从swift 2.x到swift 3的项目转换过程中遇到了自动完成的问题:自动完成看起来部分消失了所以我按照这些步骤从那一刻开始,自动完成的一切工作正常(我希望它继续......):
从终端启动此命令:
rm -rf ~/Library/Developer/Xcode/DerivedData/*
关闭Xcode 。现在您可以尝试停止索引并重新启动它,因为它已链接到自动完成:如果您将其禁用,则自动完成将停止工作。所以从终端做:
defaults write com.apple.dt.XCode IDEIndexDisable 1
启动Xcode,如果需要,可以检查现在是否已禁用自动完成功能,因此请重新关闭Xcode并输入:
defaults delete com.apple.dt.Xcode IDEIndexDisable
此键将先前和正确的索引设置删除为默认(启用),因此您可以尝试重新打开Xcode并检查自动完成是否有效。
我对我的项目发生的事情的解释是,我可能已经意外地停止了索引过程(我不耐烦),所以自动完成实际上已经受到了部分影响。有了这个"强制重新索引"我已经解决了。
希望它可以帮到你。
答案 1 :(得分:0)
是的,我也遇到了将旧的swift 2.3项目转换为swift 3的问题。我已经回到了swift 2.3,因为有很多库仍在使用swift 2.3而xcode试图转换整个库代码,我也犯了太多错误。所以我建议你在现有应用程序中使用swift 2.3。您可以尝试使用swift 3获取新应用。