自从最新的XCode 8.1(Build 8B62)更新以来,我在使用预处理宏的语法高亮/代码自动补全方面遇到了奇怪的问题。 在更新之前,我一直在使用XCode 8 GM seed,预处理宏工作得非常好,但现在当我选择一个方案时,XCode无法识别正确的目标。
例如,我有一个控制器静态库,其中包含2个目标 - 一个用于iOS,另一个用于Apple Watch。 在每个目标中,我使用一个宏(APP / WATCH)来进行特定于平台的操作,但是当我在APP目标中时,Xcode编辑器将代码突出显示为WATCH目标,而实际上针对此目标的代码没有高亮显示或代码自动完成。 Xcode似乎随机检测来自不同目标的宏。
然而,编译器始终可以检测到正确的代码,并且工作完美无缺,因此代码本身没有问题,只是编辑器出现了问题。
此外,当我启动Xcode时,代码会被高亮显示约一秒钟,然后又变成白色文本。 删除和重新添加所有方案无效,清理和删除Derived Data也无效。 是否有人遇到过相同的问题,甚至有解决方案吗?
编辑:我尝试了一些目标和宏,并发现Xcode只会采用来自一个目标的宏,并且会丢弃所有其他目标,无论选择什么目标。 有什么帮助吗?