Maison > Questions et réponses > le corps du texte
我想监听一个UISearchBar的isFirstResponder的值的变化,采用了如下代码:
[_searchBar addObserver:self forKeyPath:@"_isFirstResponder" options:NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context:nil];
-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
NSLog(@"test");
return ;
}
在UISearchBar的delegate方法中可以看到isFirstResponder确定已经改变了,但是却没有输出"test",用searchBar.observationInfo也可以看到该监听器确实是已经添加成功了,请问谁有没有碰到过这种情况?
習慣沉默2017-04-28 09:07:33
Il n'existe pas de clé telle que "_isFirstResponder" ! Vous pouvez le juger par valueForKey ou valueForKeyPath ! Si vous souhaitez surveiller cette propriété, vous pouvez personnaliser UISearchBar, remplacer les méthodes comeFirstResponder et resignFirstResponder et utiliser Notification ou déléguer ou bloquer pour transmettre le message
PHPz2017-04-28 09:07:33
Il est recommandé de vous renseigner sur RAC. Cela peut être facilement résolu avec RAC.