Xcode 7.3.1不正确自动完成

我在OSX El Capitan 10.11.4上为iOSdevise了一个简单的,全新的Objective-C项目。 我正在使用Cocoapods,所以我使用以下3个窗格创build了Podfile:Firebase,UALogger和AFNetworking 3.0。 我安装了我的Pods,然后打开了.xcworkspace。 到现在为止还挺好。

我有一个视图控制器和一个子类UITableView,在VC的.m ,我导入Firebase,UALogger,AFNetworking和我的tableview如下:

 // MyViewController.m #import "MyTableView.h" #import <AFNetworking.h> #import <Firebase/Firebase.h> #import <UALogger/UALogger.h> ... @property (strong, nonatomic) MyTableView *tableView; 

然后我去我的viewDidLoad方法,并尝试做一个简单的分配/初始化Firebase并创build我的tableview:

 // MyViewController viewDidLoad Firebase *firebase = [[Firebase alloc] initWithUrl:@"myurl..."; self.tableView = [[MyTableView alloc] init]; 

以下是发生的事情

  • Firebase类不是自动build议的,所以我必须在两个位置手动input,但是, initWithUrl... 令人惊讶的自动build议。

  • UALogger按照预期工作 – 也就是说,任何时候我开始inputUA... ,都会提示相应的完成。

  • AFNetworking类不是自动build议的,我必须手动input,但是与Firebase一样,方法名称自动build议的。

  • 当我开始创build我的tableview时, MyTableView类不是自动build议的。 这一点也不奇怪,但其中值得注意的部分是它是我自己的文件,而不是一个荚。

  • 据我所知,苹果标准库方法都是正常的自动build议。

而且,更让我更困惑的是

  • 如果我在构build中期(即,在单击运行button之后,但在项目完成之前)键入F则会自动提取Firebase 。 但是,一旦构build完成,如果我退格,然后重新键入字母F ,这不再是一个build议。 AFNetworking或其他人不会发生同样的效果。

要清楚:一切顺利,我的应用程序运行完美,没有警告,没有错误。

到目前为止,

  • 将生成设置中的User Header Search Paths设置为$(SRCROOT)/** (还有"$(SRCROOT)/**"$(SRCROOT) ),并设置为recursive
  • 清除Header Search Paths (他们重置为他们之前,我把它们清除)
  • 设置Always Search User PathsYes
  • 确保Pod公共头文件完好无损
  • 确保我的文件是目标成员的一部分
  • 删除导出的数据
  • 重新启动计算机
  • 清理项目
  • 重新删除派生的数据
  • 重新清理项目
  • 重新启动计算机
  • 卸载所有的豆荚,并重新安装它们
  • 创build第二个新的但相同的项目,并重复上述步骤
  • 卸载Xcode,然后重新安装

这一切都没有工作,现在我在这里。

好消息是,这个假设并不是什么大不了的 – 我只需要打更多的东西,把我的小手指放在骨头上。

坏消息是,我不知道为什么会发生这种情况,不得不多打字,把我的小手指放在骨头上。

如果有一个解决scheme,我还没有尝试,请让我知道。 谢谢。

尝试清理您的项目并删除派生数据。 您可以强制Xcode 按Ctrl +空格键手动显示build议。