[[UIWindow keyWindow] _autolayoutTrace]输出中Asterisk(*)的含义是什么?

Kla*_*aas 10 iphone objective-c iphone-privateapi ios

UIWindow有私有方法_autolayoutTrace,可以帮助您找到暧昧的布局.这非常好,方便,输出如下:

*<UIWindow:0x13436fd0> - AMBIGUOUS LAYOUT
|   *<UIView:0xd5e0b30>
|   |   *<PbJellyContentContainerView:0xd5e0ff0>
|   |   |   *<UIView:0x20710ee0>
|   |   |   |   *<PbMapContainerView:0x20710c90>
|   |   |   |   |   <MKMapView:0x2070df70>
|   |   |   |   |   |   <UIView:0xd1cca20>
|   |   |   |   |   |   |   <MKBasicMapView:0xd1cd020>
....
Run Code Online (Sandbox Code Playgroud)

我的问题不是任何含糊不清的问题.它是关于某些观点前面的星号.它的含义是什么?

我的猜测是它标记了所有使用自动布局的视图.但是系统如何确定这个呢?

更新:

似乎星号标记所有具有至少一个约束集或具有至少具有一个约束集的子视图的视图.

设置translatesAutoresizingMaskIntoConstraints为false而不设置约束不会给出星号.

Ale*_*nin 9

这是-[UIView _autolayoutTrace]来自WWDC 2015会话#219视频的传奇,时间是31:00

* - is laid out with auto layout
+ - is laid out manually, but is represented in the layout engine because translatesAutoresizingMaskIntoConstraints = YES
• - layout engine host
Run Code Online (Sandbox Code Playgroud)