KVO簡而言之就是:
1、當一個object有觀察者時,動態(利用runtime機制)創建這個object的類的子類
2、對于每個被觀察的property,重寫其set方法
3、在重寫的set方法中調用- willChangeValueForKey:和- didChangeValueForKey:通知觀察者
4、當一個property沒有觀察者時,刪除重寫的方法
5、當沒有observer觀察任何一個property時,刪除動態創建的子類
KVO簡而言之就是:
1、當一個object有觀察者時,動態(利用runtime機制)創建這個object的類的子類
2、對于每個被觀察的property,重寫其set方法
3、在重寫的set方法中調用- willChangeValueForKey:和- didChangeValueForKey:通知觀察者
4、當一個property沒有觀察者時,刪除重寫的方法
5、當沒有observer觀察任何一個property時,刪除動態創建的子類