【发布时间】:2018-07-19 12:31:40
【问题描述】:
这是我的代码:
var data = [list]()
var filtered = [list]()
struct list {
var label1 : String = ""
var label2 : String = ""
var label3 : String = ""
}
func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
filtered = data.filter { $0.label1.localizedCaseInsensitiveCompare(searchText) }
if(filtered.count == 0){
searchActive = false;
} else {
searchActive = true;
}
self.tableView.reloadData()
}
我从 sql 查询结果添加到列表,它们看起来很好,但是当我尝试实现搜索功能时,我无法构建它并出现错误:
无法将“ComparisonResult”类型的值转换为闭包结果 输入“布尔”
【问题讨论】:
-
你可以这样做 data.filter { $0.label1.localizedCaseInsensitiveCompare(searchText) == ComparisonResult.orderedAscending}