【发布时间】:2015-02-20 17:11:15
【问题描述】:
我使用此代码通过我的可变数组订阅事件:
[RACObserve(self, marray) subscribeNext:^....
我是 RAC 的新手,我不明白为什么,例如,如果我使用:
NSMutableArray *keyValueCodingArray = [self mutableArrayValueForKey:@"marray"];
[keyValueCodingArray addObject:@"string"];
一切正常,如果我向我的keyValueCodingArray(即我的marray)添加一些东西,它会对事件作出反应,如果我从 keyValueCodingArray 中删除一些对象,它也会作出反应。
但如果直接使用实例,RACObserve 块将无法工作。我的意思是它似乎没有观察到数组的任何变化:
[self.marray removeObjectAtIndex:0];
有什么区别?
【问题讨论】:
-
哦,我只是打印出数组,它有 NSKeyValueNotifyingMutableArray,看来我需要更深入地阅读 KVC =)
-
NS[Mutable]Array 没有实现accessor methods for to-many properties。
标签: ios key-value-observing reactive-cocoa key-value-coding kvc