2

当前尝试设置搜索将搜索如下所示的数组 (bakeryProductArray)

“茶饼”、提拉木苏、“糖浆面包”、松露、“三重巧克力布朗尼”、松露、“各种海绵”、“维也纳漩涡”、“婚礼蛋糕”

用户在 UISearchbar 中输入的内容。我不清楚如何在 CFString 中表示数组中的每个项目。

我目前拥有的代码是。

-(void)filterContentForSearchText:(NSString *)searchText scope:(NSString *)scope
{

    searchSearch = [NSPredicate predicateWithFormat:@"self CONTAINS[cd]",searchText];
    //@"%K CONTAINS[cd] %@"
    searchResults = [bakeryProductArray filteredArrayUsingPredicate:searchSearch];

    NSLog(@"Filtered Food Product Count --> %d",[searchResults count]);
}

如果需要,可以回答任何问题并提供更多代码。

4

1 回答 1

6

这是你要找的吗?

NSArray *bakeryProductArray = @[@"Tea Loaf", @"Tiramusu", @"Treacle Loaf", @"Trifle"];
NSString *searchText = @"tr";

NSPredicate *searchSearch = [NSPredicate predicateWithFormat:@"self CONTAINS[cd] %@", searchText];
NSArray *searchResults = [bakeryProductArray filteredArrayUsingPredicate:searchSearch];

NSLog(@"%@", searchResults);
// "Treacle Loaf",
// Trifle

这将查找包含给定搜索字符串的所有字符串(不区分大小写)。或者,您可以根据需要使用“=”或“BEGINSWITH”。(有关谓词的更多信息,请参见“谓词编程指南”。)

于 2013-09-07T19:36:28.313 回答