如何过滤文本字段编辑的表格视图数据 - IOS
问题描述:
我使用数组和一个文本字段创建了tableview。 在文本字段编辑表格视图数据将根据文本字段输入进行排序和过滤。如果表视图有关于状态的数据,如果我在文本字段中输入'A',则所有tableview数据将被排序并显示以字母'A'开始的所有状态名称。请告诉我这个逻辑。如何过滤文本字段编辑的表格视图数据 - IOS
答
我的建议是使用UISearchController它有很多功能,你现在问的是如此简单,如果你使用它。 所以请去UISearchController。
UISearchController tutorial将对您有所帮助。
答
此YouTube视频:https://www.youtube.com/watch?v=MgNRMcCWJhU&list=PLt2cCXacqzgfUAjHYnZ9rrPkih4NzAV4E&index=25
与本站链接可以解决你的问题。
http://www.appcoda.com/custom-search-bar-tutorial/
你只需要继续重新加载表,并把代码放在编辑功能。
例如:
func searchBarTextDidBeginEditing(searchBar: UISearchBar) {
shouldShowSearchResults = true
tblSearchResults.reloadData()
}
func updateSearchResultsForSearchController(searchController: UISearchController) {
let searchString = searchController.searchBar.text
// Filter the data array and get only those countries that match the search text.
filteredArray = dataArray.filter({ (country) -> Bool in
let countryText: NSString = country
return (countryText.rangeOfString(searchString, options: NSStringCompareOptions.CaseInsensitiveSearch).location) != NSNotFound
})
// Reload the tableview.
tblSearchResults.reloadData()
}
你可以把谓语帮助筛选出来的结果,然后重新装入您的表。 NB:保持两个数组一个将包含所有数据,其他将保存来自第一个数组的过滤数据。希望能帮助到你 – Janmenjaya