【问题标题】:Intrinsic Content Size vs Alignment Rect内在内容大小与对齐矩形
【发布时间】:2017-08-24 16:47:45
【问题描述】:

您什么时候需要在某些 UIView 子类中覆盖alignmentRect 而不是intrinsicContentSize?

只是因为位置和大小不同吗?如果你提供一个alignmentRect,内容大小会被忽略吗?

【问题讨论】:

    标签: ios autolayout uikit


    【解决方案1】:

    intrinsicContentSize 用于告诉布局系统视图的大小。使用它来通知布局系统根据其内容绘制视图的大小。内容大小,而不是位置。

    对于定位,你应该看两件事:

    layoutMargins,用于确定视图内部的布局(即stackView的内容的左右填充),alignmentRectInsets,用于通知对象持有你的观点它应该如何对齐你的观点。例如,如果您有阴影或附加视图(如通知点),您可能希望将视图放置在主要特征的中心,不包括阴影或点的宽度/高度。

    Carpeaqua 的文章 Auto Layout in iOS 8 - Layout Margins 很好地用示例解释了布局边距,Use Your Loaf 的文章 Auto Layout and Alignment Rectangles 很好地解释了解释并展示您可能想要使用alignmentRectInsets 的原因。

    【讨论】:

      猜你喜欢
      • 2020-01-24
      • 2019-08-13
      • 1970-01-01
      • 1970-01-01
      • 2011-10-18
      • 1970-01-01
      • 2010-10-11
      • 2018-06-27
      • 1970-01-01
      相关资源
      最近更新 更多