无法打开“Main.storyboard”。多个元素的 ID 为“Dsa-PS-aBW”
Posted
技术标签:
【中文标题】无法打开“Main.storyboard”。多个元素的 ID 为“Dsa-PS-aBW”【英文标题】:"Main.storyboard" could not be opened. Multiple elements have the ID "Dsa-PS-aBW" 【发布时间】:2015-07-08 04:10:18 【问题描述】:我使用比特桶。它工作正常,但从昨天提交后,推拉我们无法打开情节提要,它告诉我----“Main.storyboard”无法打开。多个元素的 ID 为“Dsa-PS-aBW”
谁能告诉我如何解决这个问题?或者我怎样才能找回我以前的代码??
【问题讨论】:
只需查看运行良好的旧提交即可。如果你用编辑器打开 storyboard 文件,你会发现所有的对象都有自己的 id 值(必须是唯一的)。我不确定您是否可以自己更改值,但值得在检查旧提交之前尝试更改值。 【参考方案1】:以下问题中较长的回答彻底解释了如何解决重复的 id。
Xcode:The identifier IBMemberID xxx-xx-xxx is already in use by <IBUITableView: 0x7fc17df3b720>
Storyboard 合并冲突是 XCode 的一个小问题。如果您搜索的话,有一些博客会提供策略。
关于取回您之前的代码,如果您还没有提交,您可以在 XCode 中执行以下操作:
Source Control > Discard All Changes
如果您已提交或 XCode 在放弃更改后仍然抱怨,您可以查看您的最后一次提交。您可以通过终端获取该提交的 7 位哈希:
$ git reflog
然后像任何分支一样检查提交:
$ git checkout [7-digit hash]
例子:
$ git checkout a2c4e6g
您将处于超然状态,但没有问题。阅读:Git create branch where detached HEAD is
【讨论】:
【参考方案2】:右键单击 xib 或故事板,然后作为源代码打开。然后使用您的 ID 搜索(对于您的情况,它是“Dsa-PS-aBW”),您应该会看到 2 个引用,只需删除其中任何一个即可。 这将帮助您在不丢弃任何内容的情况下解决问题。
【讨论】:
【参考方案3】:我就这样解决了这个问题
打开作为源代码存在问题的情节提要或 xib 并搜索 ID(例如“Dsa-PS-aBW”)
你应该至少有两个并删除其他
【讨论】:
以上是关于无法打开“Main.storyboard”。多个元素的 ID 为“Dsa-PS-aBW”的主要内容,如果未能解决你的问题,请参考以下文章
打开大型 Main.storyboard 时 Xcode 挂起/意外退出
如何通过编码管理 .storyboard 或 .xib 文件中的多个视图。?
Interface Builder 无法确定“Main_iPad.storyboard”的类型
无法在 iOS 13 上更改 Main.storyboard 的名称 [Xcode 11 GM 种子 2]