使用RAC/KVO監聽數組的變化

iOS默認不支持KVO的形式來監聽數組的變化,數組改變的時候,只是數組里面的值變化,但數組的地址沒有變化,KVO監聽的對象地址的變化

由于不支持KVO來監聽數組變化,就無法使用RAC來監聽數組

監聽數組變化的方法

1.構造一個監聽數組變化的signal

  RACSignal *ss = [[RACObserve(self, aaa) merge:self.aaa.rac_sequence.signal] map:^id(id value) {
            return @(self.aaa.count > 0);
        }];

2 . 數組變化觸發對應signal

這種方式并不會觸發signal

[self.aaa  addObject:@"ddd"];

這種方式才會


 [[self mutableArrayValueForKey:@"aaa"] addObject:@"ddd"];

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容