我有一个包含在每个项目中的通用头文件。除此之外,它还定义了一个预处理器宏,以便轻松获取对app委托的引用。问题是,app delegate的类名从一个项目更改为另一个项目,因为它包含产品名称(AppDelegate)。因此,我想知道是否可以在头文件中使用$ {PRODUCT_NAME}或类似的宏构造?
答案 0 :(得分:6)
在Xcode Build Settings中设置预处理器宏。
APPDELEGATE_CLASS=$(PRODUCT_NAME)AppDelegate
在xcconfig中,
GCC_PREPROCESSOR_DEFINITIONS = APPDELEGATE_CLASS=$(PRODUCT_NAME)AppDelegate
然后您可以在代码中使用APPDELEGATE_CLASS宏。
@interface APPDELEGATE_CLASS : NSObject <UIApplicationDelegate> {