Я создаю наблюдателя свойств (наблюдение за ключом) для моего приложения. Идеальным является наблюдение за странным значением для значения (String или Dictionary). Я написал это в viewDidLoadios property Observer Objective C (String или dictionary)
@interface BarScannerViewController() <AVCaptureMetadataOutputObjectsDelegate>
{
NSMutableDictionary *scanTrackingNumbers;
}
и viewdidload
[scanTrackingNumbers addObserver:self forKeyPath:@"scanTrackingNumber" options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context:nil];
[scanTrackingNumbers setValue:@"test123455" forKey:@"scanTrackingNumber"];
и реализовать метод
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSKeyValueChangeKey,id> *)change context:(void *)context{
if ([keyPath isEqualToString:@"scanTrackingNumber"]){
NSLog(@"scanTrackingNumber Changed %@",change);
NSLog(@"scan12335 %@",scanTrackingNumbers);
}
}
Я не знаю, почему он не работает (с учетом того, отпечатанное на консоль журнал). Кто-нибудь знает, что не так с кодом? Благодаря!
любой из есть идеал? –
, вы должны были забыть инициализировать член 'scanTrackingNumbers', как сказал @Raegtime. – Enix