我在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;
当我开始输入&#34 ;-(instancetype)init"在.m文件中,自动完成将显示第一个初始化程序,然后是大约14个自动填充,它们甚至与它相关甚至都没有,然后(最后)第二个初始化程序......
有没有办法使用7.3(或至少其中的SDK),但切换回7.2中的旧(但非常可爱,有效)自动完成功能?
答案 0 :(得分:2)
我自己也遇到过这个问题,在查看了所有其他类似的问题之后。关于这个的答案,我找不到解决方案。但是,我终于找到了对我有用的东西。
转到Xcode -> Preferences -> Components
。在那里你可能会找到一个如下所示的屏幕:
这表明文档尚未下载,因此,在不下载文档的情况下重新索引或重新构建应用程序的任何尝试都将阻止您使用自动完成功能。
一旦我下载了Xcode 7.3文档和OSX 10.11.4文档,这足以让我恢复自动完成功能(我试图构建一个OS X应用程序,所以随意下载尽可能多的文档与你相关)。
答案 1 :(得分:1)
我解决了这个问题,转到XCode -> Preferences -> Text Editing
,取消Enable type-over completions
。
当您创建新文件时也会发生这种情况,然后新文件将失去自动完成功能。
点击cmd+shift+k
尝试清理项目并构建项目
http://i67.tinypic.com/1zq6i5s.jpg
如果这不起作用,请从/ Users // Library / Developer / Xcode / DerivedData
中删除派生数据或者在这里删除: http://i65.tinypic.com/x35ruq.jpg
自动完成功能将恢复正常!
答案 2 :(得分:-1)
尝试清理项目并构建它,如果不起作用,请从/ Users // Library / Developer / Xcode / DerivedData中删除派生数据,然后再次尝试。应该工作
答案 3 :(得分:-1)
从7.2升级到7.3后,我遇到了很大的问题,这完全破坏了我的工作效率。但在我删除所有派生数据后,完全退出XCode,然后重新启动我的系统,一切都恢复正常。生活再好......