Как использовать изображение веб-URL в контроллере активности, чтобы поделиться изображением в Swift

Я использую модуль 'AlamofireImage' и показываю изображения в коллекции. Ячейка просмотра, но клиент хочет поделиться. Изображение Я использую это, но не работаю:

var shareImages = [UIImage]()
    shareImages = [UIImage(named: "http://idea-factory.in/images/25-021.jpg")] as! [UIImage];
                    let activityViewController:UIActivityViewController = UIActivityViewController(activityItems:  shareImages, applicationActivities: nil)
                    let excludedTypes: [UIActivity.ActivityType] = [.postToVimeo, .postToTwitter, .assignToContact, .saveToCameraRoll]
                    activityViewController.excludedActivityTypes = excludedTypes
                    self.present(activityViewController, animated: true, completion: nil)

приходит ошибка: поток 1: сигнал SIGABRT

2 ответа

Вы должны использовать изображение, как только оно будет получено полностью. Одним из методов, которые вы можете использовать, является

let downloader = ImageDownloader()
let urlRequest = URLRequest(url: URL(string: "http://idea-factory.in/images/25-021.jpg")!)

    downloader.download(urlRequest) { response in
        print(response.request)
        print(response.response)
        debugPrint(response.result)

        if let image = response.result.value {
            //use your activity  controller here
        }
    }

Я не уверен, что это полезно, но обычно я получаю эту ошибку, если я либо не связал свои контроллеры представления должным образом, либо мне нужно было принудительно развернуть значение и не сделал этого.

Другие вопросы по тегам