首页 > 解决方案 > 关于数据库中的 SearchBar 过滤器

问题描述

我在 Data 中构建了数据,如下所示: 在此处输入图像描述

更重要的是问题:<--“二元运算符'=='不能应用于'ModleData'和'String'类型的操作数”

提前致谢!

在此处输入图像描述

var isSearching=false
var tableData=[ModleData]()
var filteredData=[ModleData]()


func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
    if searchBar.text == nil || searchBar.text == "" {
        isSearching = false
        view.endEditing(true)
        tableView.reloadData()
    }else{
        isSearching = true
        filteredData=tableData.filter({$0 == searchBar.text!})<--
        tableView.reloadData()
    }
}

标签: swift

解决方案


更新以下代码行:

filteredData=tableData.filter({$0 == searchBar.text!})

用这条线:

filteredData=tableData.filter({$0.name == searchBar.text!})

我希望这能解决您的问题。


推荐阅读