Итак, у меня есть приложение, которое позволяет пользователям выбирать фильмы из списка в табличном представлении (заполненном API), нажав на кнопку mov ie, чтобы просмотреть более подробную информацию. Я хотел бы реализовать панель поиска, чтобы пользователи могли искать определенные c фильмы, однако у меня возникли некоторые проблемы
Я предполагал, что следующая функция сделает фильмы доступными для поиска для следующей таблицы
var newMovies: [NSDictionary] = []
...
func searchBar() {
let searchBar = UISearchBar(frame: CGRect(x: 0, y: 0, width: self.view.frame.width, height: 50))
searchBar.delegate = self
searchBar.showsScopeBar = true
searchBar.tintColor = UIColor.lightGray
self.tableView.tableHeaderView = searchBar
}
func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
if searchText == "" {
fetchMovies()
}
else {
if searchBar.selectedScopeButtonIndex == 0 {
newMovies = newMovies.filter({ (NSDictionary) -> Bool in
return NSDictionary.lowercased().contains(searchText.lowercased())
})
}
else {
}
}
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int{
return newMovies.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "MovieCell", for: indexPath) as! MovieSearchTableViewCell
let movie = newMovies[indexPath.row]
let title = movie["title"] as! String
let overview = movie["overview"] as! String
cell.titleLabel.text = title
cell.overviewLabel.text = overview
Однако это приводит к двум ошибкам в строке;
return NSDictionary.lowercased().contains(searchText.lowercased())
Значение типа 'Любой' не имеет члена 'содержит'
Значение типа 'NSDictionary 'нет члена' в нижнем регистре '
я должен возвращать что-то отличное от NSDictionary?