Xcode 7.3自动补全问题

7
我有一些关于Xcode 7.3新自动补全功能的问题。
当我导入一个类时,该类不会在自动补全中显示。 更令人烦恼的是,当导入的类包含一个typedef NS_ENUM时,可能的值也不会显示出来。 在这两种情况下,当我手动输入类名或枚举值时,那个特定值将在下一次显示出来,但对于可能的枚举值,所有其他值仍然不会显示。
此外,我注意到自动完成不再按字母顺序排序。例如,当我在.h文件中有一个带初始化器的类时:
-(instancetype)initWithServiceName:(NSString*)serviceName listenPort:(NSUInteger)listenPort keys:(NSArray*)keys;  
-(instancetype)initWithServiceName:(NSString*)serviceName listenPort:(NSUInteger)listenPort keyFile:(NSString*)keyFile;

当我在.m文件中开始输入“-(instancetype)init”时,自动完成会显示第一个初始化方法,然后紧随其后的大约有14个与之无关的自动完成选项,最后才出现第二个初始化方法...

是否有一种方法可以使用7.3(或至少其中的SDK),但切换回7.2中旧的(但非常可爱且有效)的自动完成功能?

4个回答

2

我自己也遇到了这个问题,查看了所有关于此问题的类似问题及其答案,但都没有找到解决方法。不过,最终我找到了适合我的方法。

打开 Xcode -> 偏好设置 -> 组件。你会在那里发现一个屏幕,看起来可能像下面这样:

enter image description here

这表明文档还没有被下载,因此,在没有下载文档的情况下尝试重新索引或重新构建应用程序会防止您使用自动完成功能。

一旦我下载了Xcode 7.3文档和OSX 10.11.4文档,这就足以让我恢复自动完成功能(我正在尝试构建一个OS X应用程序,所以随时可以下载与您相关的所有文档)。


1
我遇到了这个问题,需要前往 XCode -> Preferences -> Text Editing,取消 Enable type-over completions。这也会发生在你创建新文件时,新文件将失去自动完成的功能。
点击 cmd+shift+k 尝试清理项目并构建它。

enter image description here

如果这不起作用,可以从/Users//Library/Developer/Xcode/DerivedData中删除派生数据。
或者在这里删除: 输入图像描述 自动完成将会恢复。

Xcode 7.3.1,也无法使用此方法使其正常工作。 - Bart van Kuik

-1

我在从7.2升级到7.3后遇到了巨大的问题,这完全破坏了我的生产力。但是在我删除了所有派生数据、完全退出XCode并重新启动系统之后,一切都恢复正常了。生活又美好了...


-1

尝试清理项目并构建它,如果这不起作用,请从 /Users//Library/Developer/Xcode/DerivedData 中删除派生数据,然后再次尝试。应该可以解决问题。


我和ChiellieNL有同样的问题,这并不能解决问题。为了参考,您可以通过转到“窗口”->“项目”并点击“派生数据”旁边的删除按钮来清除特定应用程序的DerivedData文件夹。 - stu

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