Я новичок в Swift. Мой вопрос: я не уверен, как развернуть необязательное значение. Когда я печатаю object.objectForKey («profile_picture»), я могу видеть Optional(<PFFile: 0x7fb3fd8344d0>)
.Неустранимая ошибка: неожиданно найден нуль при развертывании необязательного значения. Swift
let userQuery = PFUser.query()
//first_name is unique in Parse. So, I expect there is only 1 object I can find.
userQuery?.whereKey("first_name", equalTo: currentUser)
userQuery?.findObjectsInBackgroundWithBlock({ (objects: [PFObject]?, error: NSError?) -> Void in
if error != nil {
}
for object in objects! {
if object.objectForKey("profile_picture") != nil {
print(object.objectForKey("profile_picture"))
self.userProfilePicture.image = UIImage(data: object.objectForKey("profile_pricture")! as! NSData)
}
}
})
Это работает. Не могли бы вы объяснить, что такое «если да»? –
'if let' является« необязательной привязкой », т. Е. Выполняется только выполнение блока, если результат не является' nil' (и привязывает переменную 'profilePicture' к развернутому значение в этом процессе). Очевидно, что если объект был «nil», он просто проскользнул бы через блок «if let». См. [Дополнительное связывание] (https://developer.apple.com/library/ios/documentation/ Swift/Conceptual/Swift_Programming_Language/TheBasics.html # // apple_ref/doc/uid/TP40014097-CH5-ID333) в языке Swift Programming._ – Rob
ОК. Получил. Спасибо :) –