2011-05-05 63 views
0

我正在创建一个应用程序,在该应用程序中我使用的字典数量相当多,现在我创建一个搜索栏并用于输入实际上这个计划是用下面的代码完成的,但现在我想要的是,每当我写一句话时说“爸爸喝果汁”,那么列表应该显示我所有的排列和组合,我的意思是说它必须单独显示所有三个单词,那么它必须显示句子,其中将包含我输入的任何单词,如: - 她饮用水,柠檬汁,妈妈和DADDY等句子,这些句子将单独或组合地包含这些单词。在ipad中使用搜索栏时列表的动态显示

- (void) searchTableView { 

    NSString *searchText = searchBar.text; 
    NSMutableArray *searchArray = [[NSMutableArray alloc] init]; 

    for (NSDictionary *dictionary in listOfItems) 
    { 
     NSArray *array = [dictionary objectForKey:@"Words"]; 
     [searchArray addObjectsFromArray:array]; 
    } 

    for (NSString *sTemp in searchArray) 
    { 
     NSRange titleResultsRange = [sTemp rangeOfString:searchText options:NSCaseInsensitiveSearch]; 

    if (titleResultsRange.length > 0) 
     [copyListOfItems addObject:sTemp]; 
    } 

    [searchArray release]; 
    searchArray = nil; 
} 
+0

什么实际问题? – 2011-05-05 08:54:17

+0

显示一组语句以及词典输入时的词典,就像谷歌每当我们输入一个词,然后对应于该词它显示一个句子列表,,我想在这里相同 – Christina 2011-05-05 08:57:32

回答

0
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"(%K contains[cd] %@) OR (%K contains[cd] %@),yourfirstKey,searchText]; 

NSArray * filteredArray = [searchArray filteredArrayUsingPredicate:predicate]; 

希望这有助于