gpt4 book ai didi

ios - 在 swift 中搜索结构

转载 作者:搜寻专家 更新时间:2023-11-01 07:28:25 24 4
gpt4 key购买 nike

您好,我正在构建代码并且正在处理结构。我想在 View 上设置搜索。这是我目前所拥有的以及我正在尝试做的事情

struct subCategory {
var subCategoryName = String()
var subCategoryDesc = String()
var subImageId = String()
var subType = String()
var subLinkType = String()
var subCatImageUrl = String()
var subCatId = String()
}

var subCatContent = subCategory()
var subCatArray = [subCategory]()
var filteredsub = [subCategory]()

这是我的 View Controller

self.resultSearchController = UISearchController(searchResultsController: nil)
self.resultSearchController.searchResultsUpdater = self
self.resultSearchController.dimsBackgroundDuringPresentation = false
self.resultSearchController.searchBar.sizeToFit()
self.tableView.tableHeaderView = self.resultSearchController.searchBar
self.tableView.reloadData()

这就是魔术应该发生的地方,但它不起作用,因为 subCatArray 不是 NSArray,所以我不能使用谓词。我还能怎么做?

func updateSearchResultsForSearchController(searchController: UISearchController)
{
self.filteredsub.removeAll(keepCapacity: false)
let searchPredicate = NSPredicate(format: "SELF CONTAINS[c] %@", searchController.searchBar.text!)
let array = (self.subCatArray as NSArray).filteredArrayUsingPredicate(searchPredicate)
self.filteredsub = array as! [String]

self.tableView.reloadData()
}

最佳答案

由于您正在处理 subCategory 数组,您可以使用 filter,例如:

filteredsub = subCatArray.filter { 
$0.subCategoryName == searchController.searchBar.text!
}

关于ios - 在 swift 中搜索结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34360226/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com