【发布时间】:2017-03-29 21:47:13
【问题描述】:
我将以下 json 对象存储为self.pElements。我有一个search bar 用于根据name 过滤项目。
[
{"id":"1","name":"Baked Chicken","category":"1","price":"5.49"},
{"id":"2","name":"Beef Kabob","category":"2","price":"5.49"},
{"id":"3","name":"Beef Gyro","category":"1","price":"5.49"},
{"id":"4","name":"Lamb Gyro","category":"4","price":"5.49"}
]
我尝试如下过滤name,但它总是返回null。即使我只输入Beef,也没有返回任何内容
pTempElements =[[NSMutableArray alloc] initWithArray:[self.pElements filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"name = %@", self.searchBar.text]]];
【问题讨论】:
-
所有“name”值都不等于“Beef”。
-
name ==> 这意味着“完美匹配”。您可能想用name BEGINSWITH[c]替换它([c] 不区分大小写,以便“牛肉”没问题。 -
你能举个小例子吗?如果用户只输入
Gyro怎么办? -
@hotspring 是否只显示包含 Gyro 的名称?
标签: ios objective-c nspredicate