Xcode 在每次击键后继续构建故事板

Xcode keeps building storyboard after each keystroke

我的 Xcode 使用情节提要的项目最近进入了一个非常奇怪的状态:Xcode 一直在构建整个项目,尤其是在 每次按键 之后的情节提要.我没有发现这种行为的原因,既没有在我的项目中区分所有有趣的文件(故事板和项目),也没有在 Xcode 中设置(也许我只是找不到它?)不用说这个 "feature"在我的项目上工作几乎是不可能的,因为 CPU 在我输入新代码时一直在重建故事板。有人看过这个吗?

这是由源头文件中的 IB_DESIGNABLE 定义引起的。可能只有当包含 IB_DESIGNABLE 的头文件包含(甚至隐含地)到您当前正在编辑的源文件中时才会出现问题。

我没有找到如何禁用 IB_DESIGNABLE 并因此连续编译故事板和源文件的最终解决方案。我会很感激 Xcode 标志暂时禁用它。我还尝试用 #ifdef 宏包围 IB_DESIGNABLE,但即使 #ifdef 的计算结果为 false,它们也会被考虑。一个一个地注释掉 IB_DESIGNABLE 有帮助,但它不是一个有很多 IB_DESIGNABLE 的可行解决方案。

更新

我终于找到了避免这种恼人行为的快速方法。在活动 window 中打开故事板,从编辑器菜单中禁用 "Automatically Refresh Views"。这将停止更新故事板编辑器中使用您的自定义代码的视图,从而显着加快您的开发速度。当您再次需要即时编译以可视化预览您的自定义代码时,请再次启用此选项(看来您还必须重新打开您的故事板才能使其再次运行)。

您可能希望向命令添加键绑定,例如 command-option-control-A,以轻松切换行为 on/off。要在 Xcode 中添加键绑定,请触摸首选项的命令逗号,选择键绑定选项卡,使用搜索栏查找命令,然后双击右侧区域以添加所需的键击。

"Leave it off"接近

交替关闭 "Automatically Refresh Views",永远不要打开它

"Refresh all views"做一个方便的击键,比如command-option-shift-R

在您工作时,只需不时或根据需要触摸 command-option-shift-R。通常只需要在您处理情节提要时触摸 command-option-shift-R。

我遇到了这个问题,接受的答案对我不起作用。

我遇到的问题是,我总是在 XCode 内的自己的选项卡中打开情节提要,以便我可以快速访问它。

我唯一可以修复它的方法是关闭该选项卡或 select 一个不同的文件(如普通代码文件),然后关闭并重新打开 XCode。此后,它不再在每次击键时重建。

但是请注意,如果您需要打开故事板进行更改,那么这个问题有时会再次出现,我将不得不重复上述过程。

等不及 Apple 解决这个问题了,因为这确实非常令人沮丧!

(ノಠ益ಠ)ノ彡┻━┻