Я пытаюсь получить некоторые данные из бэкэнд, а затем назначить их на 3 разных массива. Эти массивы, которые я затем хочу использовать, чтобы заполнить мой tableViewCells. Проблема в том, что когда я печатаю свои массивы вне блока выборки, они возвращают нуль. Когда я печатаю их в блоке выборки, они возвращают переменные объекта, которые я намереваюсь сделать.Как заполнить эти массивы, чтобы затем заполнить таблицуView?
Я включаю строку self.tableView.reloadData() в надежде, что массивы будут заполнены и впоследствии будут заполнены tableViewCells, но, похоже, это не работает.
Любые предложения о том, как правильно настроить эти массивы, поэтому, когда я печатаю их вне запроса на выборку, они возвращают соответствующие данные.
var capArray = [String]()
var imageDic = [String: [PFFile]]()
var priceArray = [Int]()
override func viewDidAppear(animated: Bool) {
capArray.removeAll(keepCapacity: true)
imageDic.removeAll(keepCapacity: true)
priceArray.removeAll(keepCapacity: true)
let query = PFQuery(className: "SellerObject")
query.findObjectsInBackgroundWithBlock { (objects, error) -> Void in
if let objects = objects {
for o in objects {
if o.objectForKey("caption") != nil && o.objectForKey("imageFile") != nil && o.objectForKey("price") != nil {
let cap = o.objectForKey("caption") as? String
self.capArray.append(cap!)
let imdic = o.objectForKey("imageFile") as? [PFFile]
self.imageDic[cap!] = imdic
let price = o.objectForKey("price") as? String
let priceInt = Int(price!)
self.priceArray.append(priceInt!)
}
}
}
}
self.tableView.reloadData()
}
OK, это имеет смысл. Но теперь, когда я добавляю self.tableView.reloadData(), приложение выходит из строя со следующим сообщением об ошибке: фатальная ошибка: неожиданно найденный nil при развертывании необязательного значения –
Вам нужно выяснить, откуда это происходит. Есть буквально тысячи прошлых вопросов с точно выраженной фразой «неожиданно найденный nil при разворачивании необязательного значения» в заголовке или вопросе. – Gruntcakes
Проверьте эту тему: http://stackoverflow.com/questions/35683813/how-to-deal-with-fatal-error-unexpectedly-found-nil-while-unwrapping-an-option –