#import "ViewController.h"
@interface ViewController ()
@property(nonatomic,strong)NSMutableArray *dataArray;
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
_dataArray=[NSMutableArray array];
[self addObserver:self forKeyPath:@"dataArray" options:NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld context:NULL];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
}
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
if ([keyPath isEqualToString:@"dataArray"])
{
NSLog(@"---change=%@---",change);
NSLog(@"dataArray.count=%ld",_dataArray.count);
}
}
//添加
- (IBAction)addBtnClick:(UIButton *)sender
{
[[self mutableArrayValueForKeyPath:@"dataArray"] addObject:@"3"];
}
//移除
- (IBAction)deleteBtnClick:(UIButton *)sender
{
[[self mutableArrayValueForKeyPath:@"dataArray"] removeObject:@"3"];
}
-(void)removeObserver:(NSObject *)observer forKeyPath:(NSString *)keyPath context:(void *)context
{
[self removeObserver:self forKeyPath:@"dataArray" context:context];
}
-(void)insertObject:(id)object inDataArrayAtIndex:(NSUInteger)index
{
[self.dataArray insertObject:object atIndex:index];
}
-(void)removeObjectFromDataArrayAtIndex:(NSUInteger)index
{
[self.dataArray removeObjectAtIndex:index];
}
@end