使用上下文進行 KVO 觀察

-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSString *,id> *)change context:(void *)context

如果你運送你的類供其他人使用,則上下文很重要 .Context 允許你的類觀察者驗證它是你正在呼叫的觀察者。

沒有傳遞觀察者的問題是,如果某個子類是你的類的子類併為同一個物件註冊一個觀察者,相同的鍵並且他沒有傳遞上下文,那麼可以多次呼叫超類觀察者。

一個獨特的變數,內部供你使用,是一個很好的背景。

欲獲得更多資訊。

重要性和良好的背景