gpt4 book ai didi

xcode - "API error: (null) returned 0 width, assuming UIViewNoIntrinsicMetric"在 Xcode 9 测试版中

转载 作者:行者123 更新时间:2023-12-04 12:57:19 24 4
gpt4 key购买 nike

我正在处理几个项目,但发生了同样的错误。

我仍然无法弄清楚是什么原因造成的。是我的代码还是 Xcode 9 beta 的问题?

MyApp[22724:4000717] API error: (null) returned 0 width, assuming UIViewNoIntrinsicMetric

最佳答案

@rmaddy 正确链接到另一个 SO 答案,但是还有其他与自动布局实践相关的可能性。

该消息还可能与项目中定义的自动布局实现和唯一约束有关。似乎在使用真实设备时通常不会出现此消息。

UIKit 框架 -> UIView API 全局变量 UIViewNoIntrinsicMetricUIViewNoIntrinsicMetric给定数字 View 属性缺少内在指标。

UIView 实现实践

每个 UIView 子类都应该实现 internalContentSize 并返回它认为适合它的大小。例如:

  • 如果您知道 UIView 的宽度,请使用 return CGSizeMake(200, 50)。
  • 如果您不知道视野有多宽,您可以使用 UIViewNoIntrinsicMetric而不是宽度。 return CGSizeMake(UIViewNoIntrinsicMetric, 50)
  • updateConstraints 的 UIView 基础实现将调用 internalContentSize 并使用从它返回的内容大小向 UIView 添加约束。

    UIView API 属性 intrinsicContentSize intrinsicContentSize接收 View 的自然大小,仅考虑 View 本身的属性。

    自定义 View 通常具有布局系统不知道的内容。设置此属性允许自定义 View 根据其内容与布局系统通信它想要的大小。这种固有大小必须独立于内容框架,因为无法根据更改的高度将更改的宽度动态传达给布局系统。
    如果自定义 View 没有给定维度的固有大小,则可以使用 UIViewNoIntrinsicMetric对于那个维度。

    结论

    Xcode 错误:

    returned 0 width, assuming UIViewNoIntrinsicMetric



    因此,我们可以了解到 Xcode 假定 UIViewNoIntrinsicMetric 大小,因为您的项目中的某些 UIView 返回了 0 的宽度大小。

    如果您在实际设备上部署时仍然收到消息,那么我会特别注意您的布局约束。

    关于xcode - "API error: (null) returned 0 width, assuming UIViewNoIntrinsicMetric"在 Xcode 9 测试版中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45256811/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com