iOS:确定所有孩子何时调用layoutSubviews

Tha*_*yne 10 objective-c uiviewcontroller uiview ios layoutsubviews

它似乎viewDidLayoutSubviewslayoutSubviews在视图上调用后立即调用,之后layoutSubviews在该视图的子视图上调用.是否有任何方法可以知道何时layoutSubviews调用视图以及所有需要更新布局的子节点?

Joh*_*rug 4

您不必知道子视图的子视图是否已更新其布局:这听起来耦合太紧了。layoutSubviews此外,每个子视图可能会以不同的方式处理其各自子视图的排列,并且可能根本不需要(需要)调用其子视图。您应该只需要了解您的直接子视图。您应该或多或少地将它们视为黑匣子,而不关心它们是否有自己的子视图。

  • 我不关心视图是否有任何子视图,我只想知道视图的内容何时完全更新,以及何时调用 viewDidLayoutSubviews 子视图内的任何内容尚未更新。 (5认同)