swift - 二元运算符“==”不能应用于“NSObject”和“String”类型的操作数
问题描述
我正在尝试通过 UISearchBar 在 UITableView 上搜索用户。问题是当我尝试时错误不断出现。
这是我的代码:
var isSearching = false
func searchBar(_ searchBar: UISearchBar, textDidChange searchText:String) {
if searchBar.text == nil || searchBar.text == "" {
isSearching = false
view.endEditing(true)
searchTableView.reloadData()
} else {
isSearching = true
filteredUsers = users.filter({$0 == searchBar.text!}) // error appears here
}
searchTableView.reloadData()
}
我正在尝试通过 Firebase fetch 在我的应用中搜索用户。我已经将用户提取到 UITableView 上,问题是我无法搜索特定的用户。请帮忙!我什么都试过了。
解决方案
一个类型NSObject
不能和一个类型比较String
,你需要
filteredUsers = users.filter({$0.someProperty == searchBar.text!})
someProperty
类内的属性在哪里
推荐阅读
- docker - docker pull 给出了无效的参考格式
- c# - WPF、棱镜、Autofac 向导
- python - 在python(没有pandas)上将列值合并到没有逗号的一列中
- arrays - 比较两个包含自定义 Swift 对象的数组之间的数据
- r - R:每天将来自多个来源的数据同步到 1 行
- expression - 解析电子邮件主题 office 365 流
- r - 从引导程序中获取样本的平均值
- microsoft-teams - 是否可以在 MS Teams 的 1:1 聊天中访问自定义选项卡?
- c++ - 这是 clang++/g++ 中的错误吗?
- javascript - AMD 模块 - 在这个例子中它在哪里加载?