Попробуйте добавить следующую строку в вашем классе.
[aView addObserver:self forKeyPath:@"frame" options:0 context:NULL];
И реализовать следующий метод. Он будет вызываться каждый раз, когда изменяется рамка представления.
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
if([keyPath isEqualToString:@"frame"]) {
//Your code here
}
}
Не забудьте убрать наблюдателя, когда он вам не нужен.
[aView removeObserver:self forKeyPath:@"frame"];