我有这个错误


  “ TodoListViewController”与协议“ UISearchBarDelegate”的冗余一致性


该错误在第1行的“ UISearchBarDelegate”上弹出。

extension TodoListViewController: UISearchBarDelegate {

func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {

    let request : NSFetchRequest<Item> = Item.fetchRequest()

    let predicate = NSPredicate(format: "title CONTAINS[cd] %@", searchBar.text!)

    request.predicate = predicate

    let sortDescriptor = NSSortDescriptor(key: "title", ascending: true)

    request.sortDescriptors = [sortDescriptor]

    do {
        itemArray = try context.fetch(request)
    } catch {
        print("Error fetching data from context \(error)")
    }

    tableView.reloadData()

  }
}


TodoListViewController的类声明:


  class TodoListViewController:UITableViewController,UISearchBarDelegate {


我对此进行了研究,没有其他问题对我的错误有效。

最佳答案

您在扩展名extension TodoListViewController: UISearchBarDelegate {中添加委托

在宣言
class TodoListViewController: UITableViewController, UISearchBarDelegate {

从声明中删除

class TodoListViewController: UITableViewController {

}

关于swift - <view controller>与协议(protocol)'UISearchBarDelegate'的冗余一致性-Swift 4,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50773465/

10-10 20:31