Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.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
Swift 如何从对象映射器类筛选数据_Swift_Uisearchbar_Uisearchcontroller_Objectmapper - Fatal编程技术网

Swift 如何从对象映射器类筛选数据

Swift 如何从对象映射器类筛选数据,swift,uisearchbar,uisearchcontroller,objectmapper,Swift,Uisearchbar,Uisearchcontroller,Objectmapper,我想在我的应用程序中实现搜索功能,但我从服务中获取数据。我在object mapper中有一个这样的数组 class Country : Mappable { var countryName:String = "" var countryID:Int = 0 var countryImage:String = "" var countryColor:String = "" required init?(_ map: Map) { } func mapping(map: Map) {

我想在我的应用程序中实现搜索功能,但我从服务中获取数据。我在object mapper中有一个这样的数组

class Country : Mappable {

var countryName:String = ""
var countryID:Int = 0
var countryImage:String = ""
var countryColor:String = ""

required init?(_ map: Map) {

}
func mapping(map: Map) {

    countryID           <- map["id"]
    countryName         <- map["name"]
    countryColor        <- map["color"]
    countryImage        <- map["image"]
}
}

您可以这样过滤阵列

let filter = countries.filter { $0.countryName.lowercaseString.containsString(self.searchCon‌​troller.searchBar.te‌​xt!.lowercaseString) }
self.resultController.tableView.reloadData()

你的意思是你想过滤国家的数组-
[country]
?是的,我想过滤整个数组@niravdt,当它只是
让filter=countries.filter{$0.countryName.lowercaseestring.containsString(self.searchController.searchBar.text!.lowercaseestring)}
但我还想过滤countryColor和CountryImages,然后您可以使用
&
/
|
过滤器的多个条件。
let filter = countries.filter { $0.countryName.lowercaseString.containsString(self.searchCon‌​troller.searchBar.te‌​xt!.lowercaseString) }
self.resultController.tableView.reloadData()