Ранее мои результаты поиска показывались обрезанными, и мне приходилось прокручивать вверх-вниз, чтобы увидеть полные результаты
Где я хочу, чтобы результаты переходили на верх таблицы, как только я начинаю что-то набирать вмоя строка поиска.
код, который я использую, чтобы заставить его работать, работает в первый раз, но затем я получаю ошибку SIGABRT в AppDelegate, как только я набираюв новом поиске.
productListTableView.scrollToRow(at: IndexPath(row: 0, section: 0), at: .top, animated: true)
▲ есть код, который использовался для отображения результатов поиска в верхней части таблицы, но как только я набираю что-то новое, симулятор закрывается для меня. я пытаюсь получить результаты ненависти в топе каждый раз, когда я нажимаю в новом поиске
extension ProductListController : UISearchBarDelegate, UISearchDisplayDelegate {
func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
productInventory = self.productSetup.filter({ (products) -> Bool in
return products.name.range(of: searchText, options: [ .caseInsensitive, .diacriticInsensitive ]) != nil
})
self.productListTableView.reloadData()
// Code that scrolls search results to the top of the tableview ▼
self.productListTableView.scrollToRow(at: IndexPath(row: 0, section: 0), at: .top, animated: true)
}
func searchBarTextDidBeginEditing(_ searchBar: UISearchBar) {
searchActive = true;
}
func searchBarTextDidEndEditing(_ searchBar: UISearchBar) {
searchActive = false;
self.searchBar.endEditing(true)
}
func searchBarCancelButtonClicked(_ searchBar: UISearchBar) {
searchActive = false;
self.searchBar.endEditing(true)
}
func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {
searchActive = false;
self.searchBar.endEditing(true)
}
}
Я пытался использовать следующее из стека, чтобы помочь, но безуспешно
UITableView - прокрутите к началу
Как получить UITableview, чтобы перейти к началу страницы при перезагрузке?
Как обновить мой UITableViewс UISearchBar после нажатия кнопки отмены UISearchBar?