首先,我将在NSArray中获取数据库,因此它不是sqlite问题。
我的问题是关于检测这个词,我只需要在打字过程中自动完成NSArray中的单词。
我找到了一些谈论
的教程[UITextFieldTextDidChangeNotification - addObserver .. etc]
但没有清楚地描述它。
答案 0 :(得分:1)
您必须在.m文件中实现UITextfield
操作方法Editing Changed
,然后根据其中的typp为搜索和过滤器数组实现以下代码。
NSString *match = textField.text;
NSMutableArray *listFiles = [[NSMutableArray alloc] init];
NSPredicate *sPredicate = [NSPredicate predicateWithFormat:@"SELF CONTAINS[cd] %@", match];
listFiles = [NSArray arrayWithArray:[YOURARRAYNAME filteredArrayUsingPredicate:sPredicate]];
NSLog(@"%@",listFiles);
// following array gives you sorted array
NSMutableArray *sortedArray = [[NSMutableArray alloc]initWithArray: [listFiles sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)]];
NSLog(@"%@",sortedArray);