1

首先,我将在 NSArray 中获取数据库,因此这不是 sqlite 问题。

我的问题是关于检测单词,只是我需要在打字过程中自动完成来自 NSArray 的单词。

我发现了一些教程

[UITextFieldTextDidChangeNotification - addObserver .. etc]

但没有描述清楚。

4

1 回答 1

1

您必须在 .m 文件中实现UITextfieldaction 方法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);
于 2012-10-20T04:40:20.990 回答