Да.Есть несколько способов сделать это (даже без поиска, я знал, что мы можем сделать это с помощью KVO, RxSwift или ReactiveCocoa. ).Так что, да, используйте KVO, если вы не занимаетесь реактивным программированием.Но я также думаю, что вы можете просто использовать NotificationCenter, отправленный вашим родительским классом просмотра.Я забыл другой способ, которым я думал, я собирался напечатать это здесь, но это ушло, грустно.
В любом случае, пример:
[self.view addObserver:self forKeyPath:@"frame" options:0 context:NULL];
[self.view.layer addObserver:self forKeyPath:@"bounds" options:0 context:NULL];
[self.view.layer addObserver:self forKeyPath:@"transform" options:0 context:NULL];
[self.view.layer addObserver:self forKeyPath:@"position" options:0 context:NULL];
[self.view.layer addObserver:self forKeyPath:@"zPosition" options:0 context:NULL];
[self.view.layer addObserver:self forKeyPath:@"anchorPoint" options:0 context:NULL];
[self.view.layer addObserver:self forKeyPath:@"anchorPointZ" options:0 context:NULL];
[self.view.layer addObserver:self forKeyPath:@"frame" options:0 context:NULL];
Блок кода получен из этого ответа: https://stackoverflow.com/a/19687115/3231194
Надеюсь, это поможет!