2011-05-05 53 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]; 

希望這有助於