代码之家  ›  专栏  ›  技术社区  ›  Vishwas Singh

Xcode 9情节提要:发生内部错误。编辑功能可能受到限制

  •  34
  • Vishwas Singh  · 技术社区  · 7 年前

    当我在Xcode 9中打开我的项目时,在序列图像板和启动屏幕中出现上述错误。

    注意:清理派生数据对我没有帮助。

    请看一下屏幕截图。

    enter image description here

    27 回复  |  直到 6 年前
        1
  •  22
  •   Nauman Malik    7 年前

    您可以在问题报告中找到问题,只需点击报告错误并打开日志。txt文件,您可以在其中找到问题。在我的例子中,我设置了无效的表行高度。

    enter image description here

    enter image description here

        2
  •  6
  •   anothernode David Joel Lukombo    6 年前

    通过命令或首选项两种方式丢弃派生数据。

    rm -rf ~/Library/Developer/Xcode/DerivedData/
    

    Xcode -> Preferences -> Location -> Derived Data
    

    screenshot 1

    在Xcode菜单中,转到产品清除项目。

    screenshot 2

    screenshot 3

    更多信息: https://www.e-learn.cn/content/wangluowenzhang/266937

        3
  •  6
  •   Tarun Seera    5 年前

    enter image description here

    1. <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0"
    2. 再次以界面生成器的身份打开情节提要

    然而,当我修改故事板的云杉代码时,版本再次恢复到3.0。

    但这起到了提神的作用,解决了我的问题

        4
  •  3
  •   lostInTransit    7 年前

    当斯威夫特无法确定我的一个变量的类型时,我就有了这个问题。

    This answer 也值得一看。

        5
  •  3
  •   brainray    7 年前

    经过多次尝试,我终于在这里修复了它。Xcode select指向错误版本的Xcode(此处指向Xcode 8.3.3)。

    要检查,请使用

    xcode-select -p
    

    要更改,请使用

    sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
    

    当Xcode select指向Xcode 8版本时,使用Xcode 9实例时似乎会出现问题。 如果您需要使用Xcode 8。再次强调,不要忘记切换回。

        6
  •  3
  •   Ketan Parmar    6 年前

    Xcode:9.0

    我已经创建了新的项目和开放的故事板,这个错误就在那里。

    解决方案:我刚刚退出xcode并重新启动,错误并不是这样。

    所以,它只需要重新启动xcode!

        7
  •  2
  •   Sumit Dixit    6 年前

    大多数情况下,当您打开2个不同版本的Xcode时,会发生此错误。 解决方案:请同时关闭Xcode和清除驱动数据。现在再试一次,每次使用一个Xcode

        8
  •  2
  •   muego    4 年前

        9
  •  1
  •   amit    6 年前

    我也面临着这个问题。

        10
  •  1
  •   4b0 Ashfaq Adib    6 年前

        11
  •  1
  •   ceekay    6 年前

    对我来说,只是辞职 Xcode open再次解决了这个问题

    Xcode 9.4.1
    MacOS High Seirra 10.13.4
    
        12
  •  1
  •   Amrutha Tamanam    5 年前

    我今天也有同样的问题

        13
  •  0
  •   Vishwas Singh    7 年前

    我通过以下方式解决了此问题:-

    1. 将我的Mac更新为MacOS High Siera
    2. 从AppStore安装了新的Xcode
        14
  •  0
  •   user4226071 user4226071    7 年前

    转到Xcode

    1. 将命令行工具更新为 Xcode 9.0
    2. 此外,删除旧的Xcode版本
    3. 重新启动Mac
        15
  •  0
  •   Jeremy Huddleston Sequoia    7 年前

    当界面生成器出现问题时,此错误是一个常见错误。不幸的是,错误本身并没有指出具体原因。有时是工具中的错误,有时是操作系统中的错误,有时是开发人员代码中的错误,有时是用户配置中的错误。

    常见原因包括:

    • 手动删除~/Library/Developer中的文件。
    • 安装有缺陷的第三方KEXT(尤其是安全或防火墙软件)。
        16
  •  0
  •   Ted sabadow    6 年前

    空故事板/新项目

    在我的例子中,当我从工作区打开故事板时就会发生这种情况。

    所以我摆脱了工作区和椰子荚。然后只需使用xcode项目和 carthage 第三方图书馆。故事板打开更快,并且没有此错误。

        17
  •  0
  •   Hit_Var    6 年前

    我刚刚解决了出现在 通过以下步骤,

    1. 退出xocde
    2. 已从项目文件夹中删除生成文件夹
        18
  •  0
  •   Besfort Abazi    5 年前

    我也有这个问题,我尝试了这里提供的大多数解决方案。

    最后,帮助我的是退出Xcode(10.1版)并重新启动MacBook。

        19
  •  0
  •   raeldor    4 年前

    异常原因:比例必须大于;0

    原因是我一直在转换到深色模式,并使用图像资源制作按钮等图标。事实证明,我有一个选项卡控制器,它指向的页面还没有将其图标设置为资产目录图像。

        20
  •  0
  •   M Murteza    4 年前

        21
  •  0
  •   MrHim    4 年前

    对于所有其他面临此问题且未能成功删除派生数据的用户,当您尝试在元素和superview之间添加纵横比时,似乎存在错误。因此,当您添加纵横比约束,然后将inspector中的第二个元素更改为superview后,该约束仍在元素层次中,但应将其移动到视图层次,或者更好的是,添加纵横比约束,从元素拖动到superview,并选择等宽。

        22
  •  0
  •   Genevios    4 年前

    enter image description here

    解决方案:只需重新打开项目。

        23
  •  0
  •   Dharman thijsvdp    4 年前

    我修正如下

    1. 创建新控制器
    2. 将视图从旧(功能失调)控制器复制到新控制器
    3. 将视图连接到中各自的插座。swift文件。(当我将视图从旧控制器复制到新控制器时,约束没有丢失)
        24
  •  0
  •   Alvaro Franco    3 年前

    我在使用Xcode 12.2时遇到了这个问题

    =================================
        ASSERTION:
    =================================
    
    Failed to update scene 'ihF-5r-7AU, uvd-WH-zGG, Tgo-fH-4sa, ExD-dD-O6v, BUC-1K-8XU, and SVS-tP-wFU' with IBLayoutConstraint (x120), IBUIViewAutolayoutGuide (x6), UIButton (x3), UIImageView (x2), UILabel (x14), UINavigationItem (x5), UITabBarItem (x2), UITableView (x3), UITableViewCell (x2), UITableViewCellContentView (x2), UIView (x15), and UIViewController (x6).
    
    Exception name: NSInvalidArgumentException
    Exception reason: UITabBarController is unsupported as viewController for -[UISplitViewController setViewController:forColumn:] in Primary column
    

    代码并找到了一些 splitViewMasterSizeMetrics 标签,我的标签栏控制器中每个标签一个标签。我删除了那些标签,工作起来很有魅力。我甚至不知道分割视图引用是如何添加的,因为我从未在我的项目中使用过它

    所以我的观点是:

    1. 如果您仍然无法解决问题,请在情节提要源代码中搜索与错误相关的任何事件
        25
  •  0
  •   mikkoata    3 年前

    我也有同样的问题。非常旧的项目和UI生成器只显示方框并给出比例必须为>0错误。UI中有一些旧图形,dpi小于72。删除/替换为72 dpi或更多,瞧。瞬间一切都好了。通常删除派生数据并重新启动,但这是解决方法。

    -&燃气轮机;检查低于72 dpi的图像并修复。

        26
  •  -1
  •   shim    3 年前

    退出Xcode并在不使用Rosetta的情况下重新打开它,一切都会好起来的。

    Xcode screenshot

        27
  •  -1
  •   Haseeb Javed    3 年前

    打开故事板作为源代码,如下所示: enter image description here

    步骤2) 您将在顶部看到这一行,将版本=“3.0”更改为版本=“3.5”

    <document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13122.16" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="BYZ-38-t0r">
    

    3) 步骤3

    希望这对你有帮助。