如何根据目标自动启用“开发者”ui控件?

时间:2011-08-29 01:25:14

标签: iphone xcode ipad

我在开发过程中启用的iPad应用程序的几个屏幕上有各种按钮。一个这样的例子是删除缓存按钮。问题是,在我发布到应用商店或为客户构建特别构建之前,必须手动隐藏此类控件。我可以通过代码检测我正在调试或使用通过调试放在那里的应用程序的版本,并以编程方式有一个“isDeveloperMode”标志,它以某种方式链接到我运行的目标?

很抱歉,如果这个问题有点令人困惑,但我一直想知道这个问题。

3 个答案:

答案 0 :(得分:2)

这篇文章Enable and Disable NSLog in DEBUG mode解决了如何仅在DEBUG模式下启用NSLog。我认为你可以考虑使用相同的方法在RELEASE模式下隐藏一些按钮。

答案 1 :(得分:1)

Xcode的构建设置有一个“其他C标志”的项目。在Release版本中,添加“-DRELEASE = 1”之类的设置。它定义了一个C preproccesor宏并将其设置为一个。

然后在你的代码中:

#ifndef RELEASE
[self showDeveloperButtons];
#endif

答案 2 :(得分:0)

您应该可以通过使用Xcode的默认标志来实现此目的。

只需检查DEBUG是否定义,你应该好好去。

如果您正在使用Interface Builder创建的UI,您可以隐藏所有内容。或者,如果您以编程方式创建它们,则可以在其中设置调用。

#ifdef DEBUG

// Code to add those buttons or hide the ones already existing

#endif

使用版本配置时,上面定义的所有代码都不会在最终版本中完成。