簡體   English   中英

iOS:addObserver和Superview查詢

[英]iOS: addObserver and superview query

我有一個名為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);

        }
    }
}

我在這里做錯什么了嗎?

只需檢查是否要進入第一個if塊,就可能存在問題。還要檢查是否已聲明變量的屬性,如果變量位於不同的類中,則要為其設置觀察者。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM