基于目标的变化图像

时间:2014-07-18 19:40:03

标签: ios target

我正在尝试为我的应用的两个不同版本更改图片。这是我到目前为止尝试过的代码。

- (void)viewDidLoad
{
[super viewDidLoad];

#ifdef LITE_VERSION
setImage:[UIImage imageNamed: @"30 Tap Game Logo Lite.png"];

#endif
} 

1 个答案:

答案 0 :(得分:3)

您需要配置目标'预处理器宏。如果您在Xcode中选择目标并选择Build Settings,则搜索"预处理器宏"你会找到你需要的设置。

在你的轻型版本目标中(并且仅在该目标中),你需要添加一个像" LITE_VERSION = 1"这样的宏。然后,当您构建轻型版本时,将定义目标LITE_VERSION

如果您希望使用#if LITE_VERSION明确关闭#ifdef LITE_VERSION,您也可以考虑使用LITE_VERSION代替#define LITE_VERSION=0

如果您不确定预处理器宏是否设置正确,可以执行以下操作:

#ifdef LITE_VERSION
#error Light version is defined.
#else
#error Light version is not defined!
#endif

这将导致预处理器生成错误,清楚地显示您的宏是否已定义。 (它也会停止构建过程,因此您无法在代码中保留该代码段,但它可能会帮助您调试目标配置。)