【发布时间】:2020-08-26 04:01:38
【问题描述】:
每当我更改 .storyboard 文件中的某些内容时,它都不会在视觉上更新。
例子:
如果我更改约束常量值,它不会更新(也不会变成黄色或红色或任何东西)
如果我删除一个视图,它看起来仍然存在,但我无法再选择它
如果我移动 UILabel,它看起来好像没有移动,但我只能在移动到的位置再次选择它
如果我重新启动 Xcode,那么 UI 就会更新。我也尝试过最新的 Xcode 版本和 11.5 Beta 版本。我已经尝试重新启动计算机、清理构建文件夹、派生数据并重新安装命令行工具。
有什么想法吗?
更新:我意识到只有一个视图控制器被窃听,所有其他的都正常更新。
【问题讨论】:
-
您的故事板中有
IBDesignable视图吗?如果你的IBDesignables 在你的故事板中渲染有问题,我以前见过这样奇怪的事情发生。它似乎有时会出错并导致情节提要无法在视觉上更新任何视图。 -
只有一个视图使用 IBDesignable,但它位于同一故事板中的另一个视图控制器中。在检查时我意识到只有一个视图控制器被窃听,所有其他的都正常更新。顺便说一句,它不是带有 IBDesignable 的视图控制器
-
好吧,这很奇怪。现在我不确定是什么原因造成的。我仍然认为值得尝试暂时删除
IBDesignable,看看是否能解决问题。 -
感谢您为我指明了正确的方向。我没有构建这个项目,所以我不知道,但我只是在所有未更新的视图控制器中发现了一个 IBDesignable。当我删除它们时,它会立即起作用。这些视图来自项目中使用的 2 个旧库。您知道任何修复/解决方法吗?我希望不必更改库或重新实现这些视图
-
啊,好吧,很高兴你明白了!嗯,如果视图在库中,我不太确定修复或解决该问题的方法。也许您可以创建包装视图类来包装库中的视图,然后在情节提要中使用这些包装视图?
标签: ios swift xcode macos storyboard