我已经保存了数据的类从我的API的UISearchBar取出由JSON(SWIFT 3)数据
class Shops {
private var _familiy_id: String?
private var _logo : String?
private var _shopname : String?
var familiy_id : String{
return _familiy_id!
}
var shopname : String{
return _shopname!
}
var Logo : String{
return _logo!
}
init(shopname : String , Logo : String , family_id : String) {
self._shopname = shopname
self._logo = Logo
self._familiy_id = family_id
}
}
我想过滤的店铺名称,并张开,如果用户编辑搜索未来酒吧。所以我试了这个代码:
var searchActive : Bool = false
var filtered:[Shops] = []
var shops = [Shops]()
func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
filtered = searchText.isEmpty ? shops : shops.filter { (item: String) -> Bool in
// If dataItem matches the searchText, return true to include it
return item.range(of: searchText, options: .caseInsensitive, range: nil, locale: nil) != nil
}
tableView.reloadData()
}
但我得到一个错误,说该项目没有成员范围! 很抱歉,这是我第一次在我的项目实施的UISearchBar时间,所以我想从其他代码
什么也没有发生!只要表格重新加载,而我在搜索栏中输入 – leo0019
你有没有检查你是从过滤数组中提取数据 –
正确获取数据,但表格没有改变。我认为它需要一个返回过滤的商店,然后重新加载表 – leo0019