Xcode 6 Swift代码完成不起作用

使用Xcode 6 GM种子我的代码完成已停止工作。 那天工作正常。 我正在试着去解决这个问题。 我做了一个Objc头文件,并把它作为Swift类的头文件。

在这一点上,我得到了一个Objective-C项目的代码完成。 但是,不是一个Swift项目。

我已经尝试重新启动Xcode,使一个新的空的项目。

只要进入user->Library->Developer->Xcode->DerivedData删除数据文件夹(派生数据),并重新启动 Xcode。

来自苹果开发论坛的这个修复程序适用于我。 我有Xcode 6.1 /优胜美地的自动完成问题。

  1. 退出Xcode。
  2. 重新启动计算机(这是为了清除任何内存中的caching)。
  3. 删除DerivedData文件夹的内容(〜/ Library / Developer / Xcode / DerivedData),精确运行, a)cd〜/ Library / Developer / Xcode / DerivedData /
    b)rm -rf *

  1. (如果步骤1-3没有真正起作用,请尝试此操作,因为重新启动后需要时间重buildcaching)删除〜/ Library / Caches / com.apple.dt.Xcode文件夹的内容,
    a)cd〜/ Library / Caches / com.apple.dt.Xcode
    b)rm -rf *

现在再次启动Xcode …

我遇到了代码完成的严重故障,因为我在.m文件的@end语句之后有一些“注释”,如下所示:

 /* NSAlertFirstButtonReturn, NSAlertSecondButtonReturn, NSAlertThirdButtonReturn */ 

这些行可以出现在@end语句之前,而不会破坏代码完成。

有一个更简单的方法来删除Xcode中的派生数据(无需打开查找器或重新启动):

Xcode Organizer – >项目 – >(您的项目) – >删除派生数据

我刚刚有这个问题。 自动完成没有工作…当我键入例如tableView ….它没有给我可用的不同function。

我试了下面,它为我工作。

  1. Xcode Organizer – >项目 – >(您的项目) – >删除派生数据

  2. 删除文件〜/ Library / Developer / Xcode / DerivedData / ModuleCache

  3. 重新启动xcode

希望这个作品

不工作的另一个可能的原因是因为它不是目标成员的一部分。 要解决这个问题,请select您正在处理的文件。 然后,转到“文件检查器”和“目标成员”部分,确保您的项目已被选中。

目标会员

尝试以下 – 听起来很愚蠢:将设备更改为iPhone 6,closuresXcode,重新打开Xcode并等待索引完成。

转到Xcode菜单,然后select窗口 – >pipe理器,然后select项目。 select你的项目,然后按下dervied数据旁边的删除button然后重新启动Xcode

该解决scheme在Xcode 6.1上与我一起工作

如果你的代码完成问题只是与UI类(例如UIImage,UIDevice),那么你只需要添加“导入UIKit”。

Swift文件不会有UI类的代码完成,除非有一个“导入UIKit”。

我有同样的问题,但在不同的情况下,我有2个项目在我的工作空间

  1. 适用于iOS和OSX的Swift框架
  2. iOS项目(使用Swift框架)

我的代码完成在iOS中工作正常,但在swift框架中保持失败。 我尝试了所有的解决scheme,没有运气,正在杀死我的生产力。

最后我想出了解决这个问题的办法。

  1. select你正在编辑的文件(在框架中)
  2. select右侧的“实用程序”选项卡
  3. 取消Mac目标(只保留你目前工作的目标)

就这样,这解决了我的问题。 希望它能帮助处于这种情况下的人。

用户/库/开发人员/ Xcode / DerivedData删除此文件夹中显示的所有文件。 之后,去你的项目名称和干净的项目,然后回到你想看到build议的文件。 input任何单词并完成。

因此,您只需确保在右侧的文件检查器视图中的“目标成员”下选中第一个框。 我不确定为什么这会改变一些事情,但我相信有人可以一起来给出一个更完整的答案。

在我的情况下,一些文件在文件系统中被删除,但仍然在项目中引用,即红色。 只要从项目中删除,一切都很好。 代码完成开始工作。

还要指出,所有上述关于清除/删除衍生数据文件夹的答案似乎暂时工作,但每当有新的拉或更新问题重新开始,所以根本原因是未参考/移动/删除的文件显示为红色在项目中,他们需要手动清除。