我在tableView中放置了一个searchBar,并将JSON解析为tableView,搜索工作正常,但我想搜索多个对象。此代码适用于最新筛选的RequestBody。我想同时搜索requestTitle and RequestBody
我怎样才能解决这个问题?`

func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {

    if searchBar.text == nil ||  searchBar.text == "" {

        inSearchMode = false
        tableView.reloadData()
        view.endEditing(true)
    } else {

        inSearchMode = true
        _ = searchBar.text!.lowercased()
        filteredRequest = pdvRequest.filter({ (pdv: PdvRequest) -> Bool in
            return pdv.pdvRequestTitle.lowercased().contains(searchText.lowercased())
        })
        filteredRequest = pdvRequest.filter({ (pdv: PdvRequest) -> Bool in
            return pdv.pdvRequestBody.lowercased().contains(searchText.lowercased())

        })
        self.tableView.reloadData()
        }
    }//END
`

最佳答案

您可以尝试,使用||搜索其中任何一个文件中的文本,或使用&&搜索两个文件中的内容

filteredRequest = pdvRequest.filter({ (pdv: PdvRequest) -> Bool in
    return pdv.pdvRequestTitle.lowercased().contains(searchText.lowercased()) && pdv.pdvRequestBody.lowercased().contains(searchText.lowercased())
})

07-26 09:38