iOS5 Storyboard错误:iOS 4.3和之前的故事板不可用

时间:2011-10-15 23:57:56

标签: xcode ios5 build storyboard

我使用故事板构建了一个小应用程序,它运行得很好。在最终测试之前,我决定尝试一下,看它是否在iOS 4.3上运行。我点击了项目设置中的灰色5.0并选择了4.3。

该应用无法使用以下错误消息进行构建:

  

在iOS 4.3和之前的

上无法使用故事板

iPhone和iPad故事板都告诉我。

当我切换回iOS5目标时,我仍然不断从两个故事板中获取这些错误,而且产品无法构建! 我检查过:项目设置中的iOS部署目标是5.0 目标应用部署目标是5.0 构建设置使用iOS 5.0 SDK

将项目恢复到可构建状态还需要做些什么?这是一个全新的错误还是我忘记了什么?

更新:即使在干净之后我仍然会收到此错误。 我将Schemes中的调试器更改为“LLDB”并进行了额外的干净,该项目现在构建并编译

18 个答案:

答案 0 :(得分:111)

我也遇到了这个问题,最后我通过以下程序解决了这个问题:

  1. 打开XXXXXX.storyboard
  2. 在Xcode右侧视图中打开“标识和类型”选项卡。
  3. 将文档版本控制中的开发值设置为“Xcode 4.2”(我的默认值为“默认版本(Xcode 4.1)”。
  4. 将部署的值从Project SDK Version(iOS 5.0)更改为iOS 5.0,然后再更改为Project SDK Version(iOS 5.0)
  5. 重建项目并解决错误。

答案 1 :(得分:20)

对我有用的解决方案就是删除项目的~/Library/Developer/Xcode/DerivedData目录。

答案 2 :(得分:17)

我只是将这一个作为另一个可能的答案添加到这里,因为第一个解决方案对我有效几次(正如我在之前的评论中所提到的)直到今天我无法让我的项目为爱编译也没有同样错误的钱。 随着调试器的更改和Xcode设置为4.2并重新启动几次,我无法编译。但是我发现了解决这个问题的另一种方法。

选择左栏中的故事板和“在Finder中显示”,然后将故事板拖到桌面上。 Xcode现在将其颜色更改为红色并且无法编译。

清理项目,将故事板从桌面拖回到finder中的目录。

然后,它构建并且错误再次消失。

我不知道是什么触发了这个错误,因为我在iOS5下开发并构建为4.3,但它似乎不时出现。

答案 3 :(得分:14)

这似乎是最新的XCode中的一个错误,我也遇到了这个错误,尝试了OP的更改调试器的解决方案并且没有效果。

自从我用4.3尝试故事板然后试图改回来之后,它突然出现了。

我的解决方案是关闭XCode,再次打开并清理。然后我编译并且它工作正常。

希望这有助于其他人。

答案 4 :(得分:11)

虽然其他解决方案对我有帮助,但他们并没有100%的工作时间。我不太了解XCode知道这个解决方案有多可靠,但至少它对我有用,所以你可以在你的项目中尝试。

在Xcode的左侧,打开项目导航器。单击顶部项目,这是您的项目。在右侧的面板中,您可以选择在项目和目标之间进行选择。单击项目,然后在右侧的面板中,在“Info”选项卡下,将“Command-line builds use”设置为Debug(在我遇到错误的两个项目中,两者都设置为Release)。 / p>

图片可能最简单:

Picture from Xcode

另一个想法:在Xcode中打开另一个带有故事板的项目并尝试运行它。如果成功,你可以回到当前的项目,它应该建立。我认为这清楚地表明了Xcode中的一个错误。

答案 5 :(得分:7)

在这里尝试了所有答案(删除故事板参考,退出Xcode,清理,更改调试器等)后,没有一个工作(使用Xcode 4.5)。

我让它重建的唯一方法(这是一个完全猜测)是在文本编辑器中打开Storyboard文件并删除以下行:

<deployment version="1280" identifier="iOS"/>

它应位于<dependencies>部分的文件顶部附近。之后,项目成功构建,Xcode甚至将该行重新添加到文件中,但是,它仍然构建...

去图......!希望它可以帮助别人!

答案 6 :(得分:6)

最后,一个优雅的解决方法似乎对我有用! (我当然希望它适用于其他所有人。这个人很顽固。)

一旦您的设置在iOS 5-land中安全返回,请尝试 Cmd-Option-Shift K (又名菜单中的“清理构建文件夹...” - 按住选项查看) ,然后构建。

答案 7 :(得分:5)

解决方案很简单, 右键单击您的故事板文件,并在finder中显示 然后选择文件所在的文件夹(这可能在en.lproj文件夹中) 右键单击导致问题的MainStoryboard.storyboard文件,然后打开文本编辑 找到读取的行或类似的东西:

<development version="4300" defaultVersion="4200" identifier="xcode"/>

并将其更改为以下内容:

<development defaultVersion="4300" identifier="xcode"/>

保存文件并构建。等瞧...

答案 8 :(得分:4)

好的,我尝试了以上所有方法,问题仍然存在。所以我只是删除故事板(作为参考不移动到垃圾箱)。然后成功建立;之后我又加了他们;建立,最后工作。

答案 9 :(得分:3)

我遇到了同样的问题。我尝试了所有上述答案和所有组合,没有任何效果。然后,在做了一些研究之后,我分析了一个简单的事实,即投掷在我身上的错误是直截了当的。

只需转到Build设置,而不是选择xcode项目文件,选择产品文件并将Deployment目标更改为5.0或5.1。错误应该消失。我在Lion OSX的Xcode 4.3中做到了这一点。它对我来说很好!!

答案 10 :(得分:3)

我也有这个问题,没有任何帮助。甚至打开另一个项目并尝试构建失败。

我做了什么,以及对我来说,将要投射什么 - &gt;信息并在“部署目标”下将iOS部署目标更改为任何内容,构建并更改回原来的内容并重新构建。

答案 11 :(得分:2)

这是另一个随机的伏都教连枷现在似乎解决了这个问题。 (此后其他技术没有帮助)我重命名了storyboard文件(以及info.plist文件中的条目)。还没有尝试过“拖动到/从桌面上”的仪式。

今晚,我已经失去了45分钟这个问题。 grrrrr。好的,我现在感觉好多了。

答案 12 :(得分:1)

rm -rf $HOME/Library/Application Support/Developer/Shared/Xcode
rm -rf $HOME/Library/Preferences/com.apple.dt.Xcode.*
rm -rf $HOME/Library/Saved\ Application\ State/com.apple.dt.Xcode.savedState
rm -rf $HOME/Library/Developer/Xcode

似乎有助于Xcode 4.3.2

答案 13 :(得分:1)

有类似的问题。 XCode可以很好地构建和运行其他项目,但无法摆脱我已更改的项目的错误,甚至无法从服务器进行备份。尝试了所有上述解决方案但是虚无...这是有效的。

  1. 卸载XCode。

  2. 删除user / library / developer / XCode文件夹。

  3. 重新安装XCode(也许你应该在搜索文件夹之前启动它,下载花了我20分钟)。

  4. 启动,清理和构建。

  5. 为我工作。救了我一些时间。有时当手术刀不起作用时,是时候了。现在我选择一个新的字体来编码(这将清除你的偏好)!

答案 14 :(得分:1)

在尝试了上述所有建议后,没有成功,我得到了我的代码来编译以下内容。

Edit -> Refactor -> Convert to Objective-C ARC

答案 15 :(得分:-1)

对我有用的唯一解决方案是创建另一个没有启用Storyboarding的项目,构建它,然后切换回storyboard项目,清理和构建。

答案 16 :(得分:-1)

这是另一个随机的巫毒,断开你的iPhone连接。

答案 17 :(得分:-2)

我简单地将部署目标从MainStroyboard更改为4.0并将Development更改为4.3。 我清理项目;并重新启动mac,:)我知道这听起来很有趣但重启xcode没有帮助。也许内存中有一个缓存......

然后我建立了这个项目;没关系!