微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

iphone – xcconfig文件中的预处理器宏

是否可以在配置文件中使用宏?我希望实现以下目标:

if iPad
set variable to 1
else
set variable to 0

那可能吗?我宁愿不使用脚本.

解决方法

您通常应该在运行时而不是编译时检查它.见 iOS – conditional compilation (xcode).

如果你不这样做,我通常建议使用@Robert Vojta暗示的不同目标.

也就是说,我可以想象这在某些共享代码中有用的情况.所以…

您可以使用名为TARGETED_DEVICE_FAMILY的xcconfig变量.它为iPhone和iPod Touch返回1,为iPad返回2.这可以用来创建一种宏.我不强烈推荐这种方法,但这是你如何做到的.假设你试图设置一些名为SETTINGS的值:

// Family 1 is iPhone/iPod Touch. Family 2 is iPad
SettingsForFamily1 = ...
SettingsForFamily2 = ...
SETTINGS = $(SettingsForFamily$(TARGETED_DEVICE_FAMILY))

我在我的项目中已经完成了几次(针对其他问题,而不是iPad检测).每次我完成它,更多的想法允许我删除它并以更简单的方式(通常找到另一种方式来构建我的项目以消除需要).但这是一种在xcconfig中创建条件的技术.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐