双Xcode设置坏了。在较旧的iOS上构建崩溃

时间:2017-04-19 09:12:21

标签: ios objective-c xcode macos ios7

我有一个必须支持iOS 7的项目,所以我安装了Xcode 7.3.1和最新的Xcode 8。

一切都很好。但现在,突然之间,当我构建我的项目并在iOS7上运行时,应用程序在启动时崩溃。

我的同事从未安装过Xcode 8。当他们在同一台设备上构建相同的源(使用git存储库)时,一切都运行良好。

当应用尝试访问视图控制器的view属性时,应用程序失败。看起来像这样。

MyViewController *myViewCon = [[MyViewController alloc] initWithNibName:NSStringFromClass([MyViewController class]) bundle:[NSBundle mainBundle]];

// Access the view property
UIView *view = [myViewCon view]; // CRASH HERE

这是我得到的错误:

  

断言失败:(tokenCount< maxCountIncludingZeroTerminator - 1),   函数CUIRenditionKeySetValueForAttribute,file   /SourceCache/CoreUI/CoreUI-232.4/CoreTheme/ThemeStorage/CUIThemeRendition.m,   第136行。

我尝试了什么

删除两个版本的Xcode并删除此处列出的所有文件:How to Completely Uninstall Xcode and Clear All Settings

然后仅重新安装版本7.3.1。

再加上完整的构建文件夹。

我不知道还能做什么。

1 个答案:

答案 0 :(得分:0)

可能导致你的xib被设置为仅从XCode 8打开,并且这在XML中添加了一些与之前不同的信息/结构,并且可以解释崩溃。

要解决这个问题:

  1. 使用XCode 8打开您的.xib文件
  2. 选择File Inspectorenter image description here
  3. 选择Opens In
    enter image description here
  4. 允许使用XCode 7.x打开它:
    enter image description here