在某些UIView子类中,何时需要覆盖alignmentRect而不是intrinsicContentSize?
只是当位置和大小不同时?如果您提供alignmentRect,是否忽略了内容大小?
答案 0 :(得分:1)
intrinsicContentSize
用于告诉布局系统视图的大小。使用此选项可以通知布局系统根据其内容绘制视图的大小。内容大小,而非位置。
对于定位,你应该看两件事:
layoutMargins
,用于确定视图内部的布局(即stackView
内容左侧和右侧的填充),以及{{1} },用于通知保存视图的对象如何对齐视图。例如,如果您有阴影或附加视图(如通知点),您可能希望将视图放在主要特征的中心,不包括阴影或点的宽度/高度。
Carpeaqua 上的文章Auto Layout in iOS 8 - Layout Margins通过示例很好地解释了布局边距,使用你的面包中的文章Auto Layout and Alignment Rectangles确实如此很好地解释和说明你可能想要使用alignmentRectInsets
的原因。