4

假设我有以下启用自动布局的视图层次结构:

UIStackView |__ OuterCustomView (overridden intrinsic content size) |__ UILabel |__ InnerCustomView (overridden intrinsic content size) |__UILabel |__UILabel

里面的标签InnerCustomView有动态变化的文本和字体。每当发生更改时,我都会在实例上调用InvalidateIntrinsicContentSize()(Xamarin 语法) 。InnerCustomView

问题是 - 我是否还需要在包含上手动使其无效OuterCustomView,或者框架是否足够聪明,可以从那里获取所有内容并将所有内容重新布局到最顶层UIStackView

4

1 回答 1

3

不,您不需要手动使内在内容大小无效。在为您的视图系统调用该方法后invalidateIntrinsicContentSize(),递归地更新层次结构中的所有超级视图。

于 2018-03-27T15:53:33.507 回答