尝试使用localizedCaseInsensitiveContainsString
进行搜索并收到以下错误消息。
* 由于未捕获的异常终止应用' NSInvalidArgumentException',原因:' - [__ NSCFString localizedCaseInsensitiveContainsString:]:发送无法识别的选择器 例如0x1702297a0'
var guests = [Guest]()
var guestresults = [Guest]()
func searchBar(searchBar: UISearchBar!, textDidChange searchText: String!) {
guestresults = guests.filter {
($0.firstname as NSString).localizedCaseInsensitiveContainsString("\(searchText)")
//($0.firstname as NSString) == searchText
}
}
但是当我使用比较工作时
($0.firstname as NSString) == searchText
其xcode 6 beta 4 感谢
答案 0 :(得分:2)
localizedCaseInsensitiveContainsString
,
因此
(str1 as NSString).localizedCaseInsensitiveContainsString(str2)
在iOS 7上出现“无法识别的选择器”异常崩溃但您可以替换它 与等效
(str1 as NSString).rangeOfString(str2, options: .CaseInsensitiveSearch).location != NSNotFound
可以回溯到iOS 2.0。