IB Designables:无法更新自动布局状态:无法从路径加载可设计项(null)

Ore*_*ren 72 xcode ios

我看到了XIB的这个错误.但其他一切都在编译,这个错误似乎没有造成任何伤害.这是我需要担心的吗?这里有什么问题,我将如何解决这个问题?

在此输入图像描述

更新:我已经将cocoapods更新到最新版本(0.36.3),虽然修复了一些编译的问题,但错误已经恢复,我现在看到一个额外的错误:

在此输入图像描述

And*_*nov 75

这是CocoaPods中的一个已知问题.它已在0.36.1版本中修复.只需更新您的CocoaPods,然后在pod文件中添加特定的代码行: use_frameworks!平台之后:ios,'7.0'

所以你的文件看起来像这样:

platform :ios, '7.0'

use_frameworks!

/// here will be dependencies etc. ///
Run Code Online (Sandbox Code Playgroud)

更新:

一劳永逸地解决问题的完整步骤列表:

  • 关闭项目;
  • 开放终端应用;
  • 将CocoaPods本身更新为ver.0.36.1 - 你已经做过这个 - 你可以跳过这一步;
  • 导航到终端中的项目文件夹;
  • 键入:"pod update"(不带引号);
  • 等待更新完成;
  • 在xCode中打开您的项目;
  • 清洁项目;
  • 再次构建项目.

  • 实际上只是更新cocoapods似乎对我有用.我很惊讶cocoapods在一个不相关的XIB中给了我一个错误,但它就这样...... (2认同)
  • 多次尝试过.没运气 (2认同)

Bar*_*zyk 31

经过一番研究和挖掘,我可以确认,没有办法解决这个问题.

这是Xcode的错误.

就这样.我们必须等待更新.

现在就重新启动 Xcode.

  • 确实如此.对我而言,它与可可豆荚无关,它始终伴随着我自己的IB设计.尝试了一切...... (7认同)
  • 界面构建器非常慢且有缺陷.几乎不能用于组件设计.是的,它在Xcode 8.0中仍然是相同的.我认为在ios开发中比在android开发中享受更多的一个最重要的原因是IDE工具要好得多.Apple在他们的xcode工具中做得非常糟糕.它变得越来越糟糕! (4认同)
  • 我在Xcode 8.2上,它在1.5年后仍然是相同的.难以置信的. (3认同)
  • 这是什么版本的Xcode?我正在使用7.1.0,我还有它 (2认同)
  • 我正在使用Xcode 8.0这个问题仍未得到解决. (2认同)

Woj*_*icz 16

这对我有用:

  1. 删除派生数据(首选项>位置)
  2. 重启Xcode
  3. 清洁项目(产品>清洁)

  • 问题肯定会再次回来.这是Xcode的错误. (3认同)

Yar*_*aro 12

2016年是xCode 7.3.1:我收到了这个错误.(使用可可豆荚1.0,但没关系)

原因:在IB中使用了一个特殊的UILabel子类.按门铃?

优雅的解决方案:

1:子类TTTAttributedLabel或FXLabel或您拥有的任何内容.在IB中使用它.

2:在子类.h文件中添加以下行:

#ifndef IB_DESIGNABLE
#define IB_DESIGNABLE
#endif

@class LabelFromPod;


IB_DESIGNABLE @interface YourLabel : LabelFromPod {
 ...
}
Run Code Online (Sandbox Code Playgroud)

3:那么我认为你必须清除项目,退出xCode,重建(通常的xCode恐慌协议),问题就会消失.

更新2017 xCode 8.2.1:一切都变得更糟:(空白的VC问题:IB甚至没有加载具有这些IB_DESIGNABLE的视图控制器的UI元素.我很无能:)


小智 9

我使用TTTAttributedLabel遇到了同样的问题,并按照Andrey的回答尝试修复它.构建成功但在此之后似乎无法加载其他pod模块的捆绑文件(在我的情况下为TSMessage,SVProgressHUD).这也在Cocoapods博客文章中说明,我不想将捆绑资源移动到mainBundle(我还没有验证它是否有效.)

因此,我选择从Podfile中删除TTTAttributedLabel,并直接包含源以消除该错误.这对我有用,我希望这也是这个问题的另一个答案.


小智 6

可能会迟到,但是当我遇到这个问题时,添加这些初始化代码对我有用

required override init(frame: CGRect) {
    super.init(frame: frame)
}

required init?(coder aDecoder: NSCoder) {
    super.init(coder: aDecoder)
}
Run Code Online (Sandbox Code Playgroud)