Причина, по которой он не выводит тип замыкания, заключается в том, что оператор try
не обрабатывается. Это означает, что при закрытии ожидается ошибка "catch"
, но в вашем случае вы забыли правило do-try-catch
.
Поэтому вы можете попробовать следующий ответ, который поймает ваши ошибки:
do {
let imageAsData = try Data(contentsOf: imageURL)
let image = UIImage(data: imageAsData)
let ImageObject = Image()
ImageObject.image = image
self.arrayOfImgObj.append(ImageObject)
} catch {
print("imageURL was not able to be converted into data") // Assert or add an alert
}
Затем вы можете заявить об ошибке (для тестирования), или то, что я лично сделал бы, - настроить оповещение.
Таким образом, приложение не будет аварийно завершать работу, а вместо этого уведомит пользователя. Я нахожу это очень полезным, когда на ходу, и мое устройство не подключено - поэтому я вижу сообщения об ошибках вместо пустого сбоя, не зная, что произошло.