控制IB_DESIGNABLE / IBDesignable构建的目标Interface Builder

13
我正在尝试在我的应用程序中使用IB_DESIGNABLE。
问题是,我的应用程序很大,并且构建需要相当长的时间(即数分钟),因此我希望将所有自定义视图保留在单独的目标中,并让Interface Builder仅构建该目标来满足需求。
无论我尝试什么,Xcode似乎都会在进行界面生成时构建项目中的所有目标,即使我将所有storyboard和IB_DESIGNABLE类移动到它们自己的框架中并将其从所有其他目标中删除。相关代码的大部分是用Objective-C编写的。
是否有任何方法可以配置或欺骗Interface Builder只构建我想要构建的目标?我尝试过使用谷歌搜索,但未找到描述Interface Builder如何决定构建什么或如何影响它的任何内容。

1
很想知道,因为我刚刚花了2个小时尝试从IB构建中排除仅适用于iOS的库,这需要x86架构。 - Sulthan
我相信使用Swift进行构建非常简单。如果您使用designable,IB将构建包含该designable的模块。一个模块是一个目标并且正在被构建。因此,最好的解决方案可能是将designables移动到单独的目标(即单独的Swift模块)。 - Sulthan
1个回答

13

根据来自IB团队成员的常识, 如果你想要更快的IBDesignable构建时间,将自定义UI代码放入自己的框架中。IB仅会使用designable构建目标。

这是这种策略在实际中实现的示例

看起来确实没有其他办法可以在没有单独的框架的情况下完成此操作。


谢谢alexcurylo!有一些赏金。我将再次尝试,拥有一个可工作的示例进行比较非常有用。 - JosephH

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接