Swift Xcode 8自动完成需要1分钟才能显示

Swift Xcode 8自动完成需要1分钟才能显示,swift,xcode,autocomplete,Swift,Xcode,Autocomplete,今天,我将我的项目更新为swift3.0 该项目使用Xcode 7.3和autocomplete运行顺利 没有问题。更新到swift3后,Xcode中的自动完成功能几乎消失(需要1分钟) Autocomplete对新项目非常有效,只有这一个有问题 我尝试了一般的性能解决方案,比如删除字符串上的“+”,设置数组而不追加,但运气不佳 我尝试删除派生数据,清理项目 我有从组件和模拟器部分的一切 我的项目使用了几个吊舱 编辑: 当我在键入时删除suggest并使用控件和空格强制它时,大多数情况下它都

今天,我将我的项目更新为
swift3.0

该项目使用
Xcode 7.3
和autocomplete运行顺利 没有问题。更新到
swift3
后,Xcode中的自动完成功能几乎消失(需要1分钟)

  • Autocomplete对新项目非常有效,只有这一个有问题

  • 我尝试了一般的性能解决方案,比如删除
    字符串上的
    “+”
    ,设置数组而不追加,但运气不佳

  • 我尝试删除
    派生数据
    ,清理项目

  • 我有从组件和模拟器部分的一切

  • 我的项目使用了几个吊舱

编辑

当我在键入时删除suggest并使用控件和空格强制它时,大多数情况下它都能工作。但它在我打字时不起作用(也有纠错功能)

当我安装Pod时,虽然现在每个Pod都在Swift 3中,但它要求我再次转换项目。我点击“确定”,它显示999+个错误,但在生成转换时,它表示不需要任何转换和“更新”(当我清理项目时错误消失)


谢谢

在我的项目从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并检查自动完成是否工作

我对我的项目所发生的事情的解释是,可能是我无意中停止了索引过程(我很不耐烦),所以自动完成受到了影响,事实上它部分工作。通过这个“强制重新索引”,我解决了这个问题


希望它能对您有所帮助。

是的,我在将旧的swift 2.3项目转换为swift 3时也遇到了问题。我回到了swift 2.3,因为有很多库仍然在使用swift 2.3,xcode试图转换整个库代码,我也得到了太多的错误。因此,我建议您在现有应用程序中使用swift 2.3。您可以尝试使用swift 3获取新的应用程序。

目前还没有已知的解决方案。Xcode 8对于所有与快速索引相关的事情都很慢,仅此而已。让我们希望它很快得到修复。所以每个大项目都缺少自动完成?我相信这是真的,自从更新xcode之后,我也遇到了同样的问题。在你的问题中,你不是说“更新到xcode 8之后”而不是说“更新到Swift 3之后”吗?我最近更新到了Xcode 8.1,它看起来好了一点,但仍然不是Xcode 7中的版本,这是一样的。是的,试过8.1,但还是一样。如果您在键入时删除并强制它,这会更好一些,但不是一个解决方案。由于8.1的问题似乎仍然存在,所以我猜它在我的项目中有一些东西,每一步都遵循,但是自动完成在20-30秒之后再次出现。我正在尝试做一些性能更改。但我认为这不是问题所在。我相信它与安装在兴趣点的吊舱有关,所以似乎只与吊舱有关。你能在没有吊舱的情况下完成同样的项目吗?让我知道……事实上我所有的图书馆都在Swift 3中。我认为Xcode认为有2.3个库……我在旧代码中遇到了问题,我在swift 3中一步一步地重写,它对我来说很好。