我正在处理几个项目,它发生了同样的错误。
我仍然无法弄清楚是什么导致了它。这是我的代码或Xcode 9 beta的问题吗?
MyApp [22724:4000717] API错误:(null)返回0宽度,假设UIViewNoIntrinsicMetric
答案 0 :(得分:3)
@rmaddy正确链接到另一个SO答案但是还有其他与自动布局实践相关的可能性。
该消息还可能与自动布局实现和项目中定义的唯一约束有关。在使用真实设备时,通常不会出现此消息。
UIKit框架 - > UIView API全局变量 UIViewNoIntrinsicMetric
UIViewNoIntrinsicMetric
缺少给定数字视图属性的内在指标。
UIView实施实践
每个UIView子类都应该实现 intrinsicContentSize 并返回它认为适合它的大小。例如:
UIViewNoIntrinsicMetric
而不是宽度。 return CGSizeMake(UIViewNoIntrinsicMetric, 50)
updateConstraints
的UIView基础实现将调用 intrinsicContentSize ,它将使用从其返回的内容大小向UIView添加约束。
UIView API属性 intrinsicContentSize
intrinsicContentSize
接收视图的自然大小,仅考虑视图本身的属性。
自定义视图通常包含显示布局系统不知道的内容。通过设置此属性,自定义视图可以根据布局系统的内容与布局系统进行通信。此内在大小必须独立于内容框架,因为例如,无法基于更改的高度动态地将更改的宽度传达给布局系统。
如果自定义视图没有给定维度的内在大小,则可以使用
该维度UIViewNoIntrinsicMetric
。
<强>结论强>
Xcode错误:
假设UIViewNoIntrinsicMetric ,返回0宽度
因此,我们可以了解Xcode假设 UIViewNoIntrinsicMetric 大小,因为项目中的某些UIView返回了宽度大小为0的情况。
如果您在真实设备上部署时仍然收到消息,那么我会特别注意您的布局限制。
答案 1 :(得分:-2)
我已经应用了许多解决方案,但除了用两种不同的方式将“ WKWebView”降级为“ UIWebView”外,什么也没发现: 1.只需将其添加到您的config.xml
<preference name="CordovaWebViewEngine" value="CDVUIWebViewEngine"/>
OR
ionic cordova插件删除cordova cordova-plugin-ionic-webview -保存
这里是链接:
https://ionicframework.com/docs/wkwebview/#downgrading-to-uiwebview