我正在創建一個iOS應用程序,我希望用戶能夠通過UITableView
進行搜索並顯示基於各種不同輸入的結果。我使用的NSPredicate有多個條件用「OR」分隔來做到這一點,但由於某種原因,它只能用第一種條件搜索,而沒有其他條件。NSPredicate格式問題
這裏是我的NSPredicate如何格式化:
let searchPredicate = NSPredicate(format: "(SELF.firstName CONTAINS[c]
%@) OR (SELF.lastName CONTAINS[c] %@) OR (SELF.major CONTAINS[c] %@) OR
(SELF.year CONTAINS[c] %@) OR (SELF.gpa CONTAINS[c] %@)",
searchController.searchBar.text!)
我的參數是名字,姓氏,專業,一年,GPA。當我在搜索欄中輸入除名字以外的任何內容時,不會顯示任何結果。但是輸入名字確實會返回匹配。這是爲什麼發生?我的NSPredicate格式不正確?
NSPredicate不支持位置參數。 –
@MartinR謝謝。我不確定這一點。 – rmaddy