subview1 という名前の uiview があります。特定の状況に応じて、これをサブビューとして他のいくつかのビューに追加します。今、私は次のコードを持っています
[subView1 addObserver:self forKeyPath:@"superview" options:NSKeyValueObservingOptionNew context:nil];
私の問題は、 obserValueForKeypath 関数が呼び出されないことです
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context{
if (self.subView1 == (UIView*)object) {
if ([keyPath isEqualToString:@"superview"]) {
NSLog(@"superview changed %@",change);
}
}
}
私はここで何か間違ったことをしていますか?