小结:Swift、OC语言中多target在代码中如何区分

小结:Swift、OC语言中多target在代码中如何区分,第1张

概述一、对swift工程 经实践,网上的方法都无法成功,后来思考DEBUG宏定义方式,经实测有效,方式如下: 注意:不能把swift flags 小三角折叠后双击设置-DTarget4AppStore, 一、对swift工程经实践,网上的方法都无法成功,后来思考DEBUG宏定义方式,经实测有效,方式如下:注意:不能把swift flags 小三角折叠后双击设置-DTarget4AppStore,这样会自动清空之前生成或定义的宏定义

 
 #if Target4AppStore        self.vIEw.backgroundcolor = UIcolor.yellow//效果在运行appstore target时,通过界面调试工具可看到背景图为黄色  #else        self.vIEw.backgroundcolor = kBGcolor#endif

 

  二、对OC工程build setting中搜索 macro,在preprocessor Macros展开状态下,对新复制出的target的deBUG和release下都加上宏定义。 

////  VIEwController.m//  mulTargetsTest////  Created by myl on 2017/4/12.//  copyright © 2017年. All rights reserved.//#import "VIEwController.h"@interface VIEwController ()@end@implementation VIEwController- (voID)vIEwDIDLoad {  [super vIEwDIDLoad];    #if IS_MACRO //macao 版,Xcode缺陷:文本高亮状态不会随着切换scheme变化,但是运行起来是对的。  #if DEBUG    self.vIEw.backgroundcolor = [UIcolor bluecolor];  #else    self.vIEw.backgroundcolor = [UIcolor browncolor];  #endif#elif  IS_BEIJING//北京版  #if DEBUG    self.vIEw.backgroundcolor = [UIcolor cyancolor];  #else    self.vIEw.backgroundcolor = [UIcolor blackcolor];  #endif  #elif  IS_TIANJING//天津版,还未复制出target,不会走这  #if DEBUG    self.vIEw.backgroundcolor = [UIcolor cyancolor];  #else    self.vIEw.backgroundcolor = [UIcolor blackcolor];  #endif#else//广州版  #if DEBUG  self.vIEw.backgroundcolor = [UIcolor redcolor];  #else   self.vIEw.backgroundcolor = [UIcolor orangecolor];  #endif#endif  }@end

 

以上代码已经过实际测试,完全正确。    总结

以上是内存溢出为你收集整理的小结:Swift、OC语言中多target在代码中如何区分全部内容,希望文章能够帮你解决小结:Swift、OC语言中多target在代码中如何区分所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/999326.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存