Я продолжаю получать сообщение об ошибке после добавления UISearchController в tableview

Я продолжаю получать это сообщение о фатальной ошибке: неожиданно найдено nil при развертывании необязательного значения (lldb) в этой строке (отмечено */ */)

override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int
    {
       */ if resultSearchController.active */
        {
            return self.filtered.count
        }
        else
        {
            return self.entries.count
        }

    }

Табличное представление загружается из coreData

class NotesListTableViewController: UITableViewController ,UISearchResultsUpdating {
    var managedObjectContext : NSManagedObjectContext!
    var entries: [NSManagedObject]!

    var filtered :[NSManagedObject] = []
    var resultSearchController:UISearchController!

записи используются для загрузки из основных данных, а отфильтрованные используются для хранения данных после поиска.

может ли кто-нибудь помочь мне с этим


person Vineeth Krishnan    schedule 18.06.2016    source источник


Ответы (1)


Проблема в том, что resultSearchController равен нулю.

Вы также можете изменить ! для свойства на ?, тогда компилятор заставит вас обрабатывать случай, когда оно может быть равно нулю всякий раз, когда вы пытаетесь получить к нему доступ. Или вы можете проверить, почему он равен нулю, и исправить это. Например, вы никогда не создаете его в первую очередь?

person SeanCAtkinson    schedule 18.06.2016