17

IBDesignable在 swift 中有自定义类,它们会做一些导致 Interface Builder 崩溃的事情。是否有一个标志我可以检查我是否在界面生成器中运行?理想情况下,它将是一个预编译器指令(#ifdef COMPILED_FOR_INTERFACE_BUILDER或类似的东西)。我想也许我可以自己设置一个标志,prepareForInterfaceBuilder()但这看起来很混乱而且似乎不能可靠地工作,因为它看起来类属性是在调用该函数之前设置的,这可能会触发导致问题的代码。似乎必须有更好的方法。谢谢!

4

1 回答 1

24

https://developer.apple.com/library/ios/recipes/xcode_help-IB_objects_media/Chapters/CreatingaLiveViewofaCustomObject.html

您可以使用预处理器宏 TARGET_INTERFACE_BUILDER 来指定包含或排除在您的自定义视图类中的代码。”

于 2015-06-10T01:43:32.060 回答