实观察者的回调方法现
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
UIImage *image = [change objectForKey:NSKeyValueChangeNewKey];
NSIndexPath *indexPath = (__bridge NSIndexPath *)context;
TableViewCell *cell = (TableViewCell *)[self.mainTableView cellForRowAtIndexPath:indexPath];
NSArray *visibleCellArray = [self.mainTableView visibleCells];
if ([visibleCellArray containsObject:cell]) {
cell.pictureImageView.image = image;
}
[object removeObserver:self forKeyPath:@"image"];
}
[model addObserver:self forKeyPath:@"image" options:(NSKeyValueObservingOptionNew) context:(__bridge_retained void *)(indexPath)];
[cell setCellModel:model];