Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/101.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何使用NSManagedObject Swift在基于数组的TableView中搜索_Ios_Swift_Uitableview_Search_Core Data - Fatal编程技术网

Ios 如何使用NSManagedObject Swift在基于数组的TableView中搜索

Ios 如何使用NSManagedObject Swift在基于数组的TableView中搜索,ios,swift,uitableview,search,core-data,Ios,Swift,Uitableview,Search,Core Data,我想在我的tableview(在VC中)中包含一个搜索栏。但是,我不确定如何实际搜索数组: var allLocations = [NSManagedObject]() 它包含许多具有名称属性的位置对象 谁能给我指一下正确的方向吗 我一直遵循这一指南: 这让我想到了这个方法: func updateSearchResultsForSearchController(searchController: UISearchController) { if let searchText

我想在我的tableview(在VC中)中包含一个搜索栏。但是,我不确定如何实际搜索数组:

var allLocations = [NSManagedObject]()
它包含许多具有
名称
属性的位置对象

谁能给我指一下正确的方向吗

我一直遵循这一指南:

这让我想到了这个方法:

func updateSearchResultsForSearchController(searchController: UISearchController) {
        if let searchText = searchController.searchBar.text {
            allLocationsFiltered = searchText.isEmpty ? allLocations : allLocations.filter({(dataString: String) -> Bool in
                let dataString2 = dataString.name
                return dataString2.rangeOfString(searchText, options: .CaseInsensitiveSearch) != nil
            })

            tableView.reloadData()
        }
然而,我得到一个错误的说法

Cannot convert value of type '(String) -> Bool' to expected argument type '(NSManagedObject) -> Bool'

尝试使用谓词。更新为您提供托管对象数组的请求使用的谓词如何?更新的谓词可能包括搜索条件?您正在使用NSFetchedResultsController吗?请尝试使用谓词。如何更新为您提供托管对象数组的请求所使用的谓词?更新的谓词可能包括搜索条件?您正在使用NSFetchedResultsController吗?