【发布时间】:2013-04-25 01:10:22
【问题描述】:
我正在管理一个有两个目标的 iOS 应用程序。
这是因为两个目标都使用了 90% 的相同代码。 每个目标都分配有一个特定的预处理器宏,因此可以为每个目标区分代码块。
对于两个目标,一切都编译正确。
但问题是 xcode 仅自动完成第一个标记的语法高亮显示。
例如:
Target => "MainTarget" - 预处理宏 => TARGET_A=1
Target => "OtherTarget" - 预处理宏 => TARGET_B=1
如果我有以下代码:
#if TARGET_B
NSLog(@"Log Something %f", 3.5);
#else
NSLog(@"Log other stuff %i", 4);
#endif
仅 NSlog(@"Log other stuff %i", 4);颜色正确。
编译和运行工作正常,但我想在构建和启动之前直观地知道我有错字。
因此,如果能够切换 MainTarget 或 OtherTarget 是编辑器的活动代码,那就太好了。
【问题讨论】:
-
我设法找到了解决办法。 1) 将 Target 设置为您希望预处理器 Marcro 对其进行评估的目标。 2) 构建项目。 3) 退出 XCode 并重新启动 XCode。 Xcode 现在为该目标自动完成和语法高亮显示。在不重新启动 Xcode 的情况下切换目标仍然很好。
标签: preprocessor xcode4.5