我真的很喜欢
IBInspectable
和 IBDesignable
功能,它们可以直接在 Storyboard 中加快速度并更好地查看最终结果。但是天哪……它们大大减慢了我的故事板加载速度,并且每次我编辑包含带有 IBInspectable
的视图的控制器时都会变得非常缓慢。它几乎无法使用(在 2018 MBP,16GO RAM 上)。我使用 IBInspectable
的两个库是 PMSuperButton 和 Hero。
请注意,它不是重建,与此问题相反:IBDesignable 视图导致无休止的重建。另请注意,取消勾选
Automatically Refresh Views
不会改变任何内容。
所以我正在寻找一种方法来暂时禁用所有这些,因为大多数情况下我不需要它们。
我正在考虑一个能够切换它的宏:
#define IBInspectable_togglable IBInspectable //enabled
//#define IBInspectable_togglable //disabled
但这并不能完成任务。即使它有效,我对 Swift 也一无所知,它不支持宏。
有人有任何想法来执行此操作吗?
您只需关闭项目,然后在 Xcode 中打开
xib
或 storyboard
即可,无需打开整个项目。
这将阻止加载自定义的
IBInspectable
。
这将使您在设计整个视图时获得良好的体验,而不会出现延迟。
只需注释掉包含这些 @IBInspectable 变量的整个扩展,完成情节提要上的其他更改,然后在要运行项目时再次取消注释即可。