让表格搜索功能正常工作?

时间:2016-11-11 14:45:53

标签: swift search uisearchbar

我正在尝试为我的桌子显示一个显示JSON数据的搜索栏。这是我的搜索栏功能:

func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
    filtered = arrRes.filter({ (text) -> Bool in
        let tmp: NSString = text
        let range = tmp.rangeOfString(searchText, options: NSStringCompareOptions.CaseInsensitiveSearch)
        return range.location != NSNotFound
    })
    if(filtered.count == 0){
        searchActive = false;
    } else {
        searchActive = true;
    }
    self.exercisesTableView.reloadData()

这是我声明的变量来存储数据

    var arrRes: [[NSObject: AnyObject]] = []

我正在拉错误:

  

无法使用类型'(([NSObject:AnyObject])抛出的参数列表调用'filter' - > Bool)期望类型'((Dictionary)throws - > Bool)''的参数列表

我确定这与访问arrRes变量及其数据类型有关,但我不确定如何解决它?

感谢您的任何见解

1 个答案:

答案 0 :(得分:0)

我认为您只需要更新filtered的声明以匹配arrRes,就像这样:

var filtered: [[NSObject: AnyObject]] = []

...但是如果不知道当前如何宣布该变量,很难确定。