Joh*_*ane 4 iphone xcode objective-c xcconfig ios
是否可以在配置文件中使用宏?我希望实现以下目标:
if iPad
set variable to 1
else
set variable to 0
Run Code Online (Sandbox Code Playgroud)
那可能吗?我宁愿不使用脚本.
您通常应该在运行时而不是编译时检查它.请参阅iOS - 条件编译(xcode).
如果你不这样做,我通常建议使用@Robert Vojta暗示的不同目标.
也就是说,我可以想象这在某些共享代码中有用的情况.所以...
您可以使用一个名为的xcconfig变量TARGETED_DEVICE_FAMILY.它为iPhone和iPod Touch返回1,为iPad返回2.这可以用来创建一种宏.我不强烈推荐这种方法,但这是你如何做到的.假设你试图设置一些名为SETTINGS:
// Family 1 is iPhone/iPod Touch. Family 2 is iPad
SettingsForFamily1 = ...
SettingsForFamily2 = ...
SETTINGS = $(SettingsForFamily$(TARGETED_DEVICE_FAMILY))
Run Code Online (Sandbox Code Playgroud)
我在我的项目中已经完成了几次(针对其他问题,而不是iPad检测).每次我完成它,更多的想法允许我删除它并以更简单的方式(通常找到另一种方式来构建我的项目以消除需要).但这是一种在xcconfig中创建条件的技术.
据我所知这是不可能的。但如果你想解决简单的任务 - 很多常见的设置和只有少数变量具有不同的值,你可以这样做:
通用.xcconfig:
settings for both configs
Run Code Online (Sandbox Code Playgroud)
ipad.xcconfig:
#include "generic.xcconfig"
ipad-specific-settings
Run Code Online (Sandbox Code Playgroud)
iphone配置文件
#include "generic.xcconfig"
iphone-specific-settings
Run Code Online (Sandbox Code Playgroud)
这可以解决您的条件需要。我确实经常使用这个模式。
| 归档时间: |
|
| 查看次数: |
2538 次 |
| 最近记录: |