例:如何实现在textField中输入关键字后得到想要的数据或信息
在这里我使用谓词来实现:
在UITextField中有几个这样的字符串常量
NSString *const UITextFieldTextDidBeginEditingNotification;
NSString *const UITextFieldTextDidEndEditingNotification;
NSString *const UITextFieldTextDidChangeNotification;
根据表面字意就可知他们是在TextField编辑时候的状态来发送一个notification[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textFieldAct:) name: UITextFieldTextDidChangeNotification object:nil] //创建一个Observer
具体实现方法
-(void)textFieldAct:(NSNotification*)notification
{
UITextField* textField = notification.object; //获取文本框
NSString* str = textField.text;
NSString* predText = [NSString stringWithFormat:@"self like [c] '*%@*'", str]; //创建谓词条件字符串
NSPredicate* predicate = [NSPredicate predicateWithFormat:predText];
//然后再用filtered方法过滤下数组就可以了,记得最后刷新一下数据.
}