swift - 复制 ViewController 后 Storyboard Assistant Editor 不会自动切换
问题描述
我有一个带有 6 个视图控制器的故事板。我想复制其中一个(我基本上想从原始 VC 中删除一半的功能并将其放入第二个 VC。
在情节提要中复制/粘贴现有的 VC1。在 Finder 中,我将 VC1 的 .swift 文件复制/粘贴到一个名为 VC2 的新文件中。回到 Xcode 9.4.1,我将该 VC2 文件添加到左侧导航窗格中的文件夹中。我点击了故事板中的 VC2 并将其自定义类更改为 VC2。
VC1 有一个自定义的 VC1 类,甚至还有一个 VC1 的 StoryboardID。VC2 有一个自定义的 VC2 类,甚至还有一个 VC2 的 StoryboardID。我认为 StoryboardID 将有助于解决这种情况。
在 Storyboard 中,我可以清楚地看到 VC1 和 VC2。它们被适当地标记。即使是最左边的窗格也很好!
在 Storyboard 中,如果我单击 VC2,Assistant Editor 会自动切换到 VC2,我会看到代码。
但是...在情节提要中,如果我单击 VC1,则助理编辑器不会切换到 VC1。我必须单击单词/按钮:自动,现在显示 (2) 并选择 VC1,然后它将代码切换到 VC1,但是我必须再次单击 VC1 才能进行身份检查以列出正确的内容.
我点击了 Product -> Clean 然后 Product -> Build 然后重新启动,但它没有改变任何东西
我知道我仍然需要剪切和编辑我的 VC,但该应用程序正在运行(VC2 尚未加入)。
我们可以这样复制 VC 吗?有没有办法让自动助手编辑相应地切换?
谢谢
解决方案
删除 VC2 .swift 文件。创建一个全新的 VC2 .swift 文件,然后仅复制并粘贴代码。这应该避免 Xcode 在 VC1 和 VC2 之间混淆。
推荐阅读
- node.js - 无法在 M1 Mac 上使用 Docker 安装Sharp
- php - Binance Pay:PHP cURL 出现“此请求的签名无效”错误
- java - CorrectLogin() 处未处理的异常类型 IOException;
- flutter - GetX 状态管理的导航错误:
- powershell - 我有powershell命令,其中每个内容都需要插入到aexcel的单元格中
- php - PHP:通过字符串动态获取带有 NESTED Optgroup 和选项的选择
- puppeteer - 使用 puppeteer 选择下拉选项
- java - 设置时间超过当前时间时如何显示错误消息?
- powerbi - 如何部署到现有的 powerBI 工作区?
- c++ - 在 ImGui::InputText(...) 中使用 std::string