我需要某种钩子或模板方法来覆盖当视图作为子视图添加到另一个视图时被调用,但是在文档中找不到它。它必须是UIKit自动调用的东西。原因是我的视图必须在有超级视图时立即启动一些动画,但是一旦没有超级视图就停止制作动画。
我无法覆盖-setSuperview:因为Xcode没有表明这样的类存在 - 而且我不能调用super。
答案 0 :(得分:12)
您想要覆盖- (void)didMoveToSuperview
。
didMoveToSuperview
表示其超级视图已更改。
此方法的默认实现不执行任何操作。子类可以覆盖它来执行 超级视图发生变化时的其他操作。