【发布时间】:2013-08-27 08:37:42
【问题描述】:
我试图继承一个 NSOperation,并从中读取一些示例, 他们说:当任务完成时,使用 NSOperation 的 KVO 来完成操作, 代码在这里:
[self willChangeValueForKey:@"isFinished"];
[self willChangeValueForKey:@"isExecuting"]
finished = YES;
executing = NO;
[self didChangeValueForKey:@"isFinished"];
[self didChangeValueForKey:@"isExecuting"];
然后 isFinished 被调用
- (BOOL) isFinished{
return(finished);
}
谁能给我解释一下?为什么 isFinished 被调用,isFinished 会完成操作吗?据我了解,KVO 是否需要手动 [self didChangeValueForKey:@"isExecuting"];而且我没有看到像 addobserver: 和 observeValueForKeyPath: 这样的代码
我写
-(void)call
{
[self willChangeValueForKey:@"isVip"];
[self didChangeValueForKey:@"isVip"];
}
-(void)isVip
{
NSLog(@"Im vip");
}
do [self call]时不调用isVip;
【问题讨论】:
标签: ios key-value-observing nsoperation