Как фильтровать данные табличного представления при редактировании текстового поля — IOS

Я создал табличное представление, используя массив и одно текстовое поле. При редактировании текстового поля данные табличного представления будут сортироваться и фильтроваться в соответствии с вводом текстового поля. Если табличное представление имеет данные о состояниях, если я введу «A» в текстовое поле, все данные табличного представления будут отсортированы и отображены все названия штатов, начинающиеся с буквы «А». Подскажите, пожалуйста, логику этого.


person MahajanSagar    schedule 26.05.2017    source источник
comment
Вы можете воспользоваться помощью Predicate, чтобы отфильтровать результат, а затем перезагрузить таблицу. NB: сохраните два массива, один из которых будет содержать все данные, а другой будет содержать отфильтрованные данные из первого массива. Надеюсь, поможет   -  person Janmenjaya    schedule 26.05.2017


Ответы (2)


Это видео на 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()
}
person Aashish    schedule 26.05.2017

Мое предложение состоит в том, чтобы использовать UISearchController, который имеет множество функций, и то, что вы просите сейчас, будет настолько простым, если вы его используете. Поэтому, пожалуйста, используйте UISearchController.

Вам будет полезно руководство по UISearchController.

person elk_cloner    schedule 26.05.2017