Установка изображения UiButton после преобразования PHAsset в UIImage - PullRequest
0 голосов
/ 11 сентября 2018

Привет! Я использую следующий код для извлечения последнего изображения из библиотеки фотографий и затем устанавливаю его на кнопку, но оказывается, что вместо изображения отображается серый цвет по умолчанию

func loadLastImageThumb(completion: @escaping (UIImage) -> ()) {
let imgManager = PHImageManager.default()
let fetchOptions = PHFetchOptions()
 // fetchOptions.fetchLimit = 1
   fetchOptions.sortDescriptors = [NSSortDescriptor(key:"creationDate",  ascending: true)]
  let fetchResult = PHAsset.fetchAssets(with: PHAssetMediaType.image, options: fetchOptions)

if let last = fetchResult.lastObject {
   let options = PHImageRequestOptions()
    options.deliveryMode = .fastFormat
    options.resizeMode = .exact
    options.isSynchronous = true
    options.version = .original
    print(last)
    imgManager.requestImage(for: last, targetSize: gallery.bounds.size, contentMode: PHImageContentMode.aspectFit, options: options, resultHandler: { (image, _) in
        if let image = image {
            completion(image)
            print(image)
            print(image.size)
            print(self.gallery.bounds.size)

        }
    })
}
}

// inпросмотр загружен

   self.loadLastImageThumb { [weak self] (image) in
    DispatchQueue.main.async {
        self?.gallery.setImage(image, for: .normal)
    }
}

enter image description here

1 Ответ

0 голосов
/ 11 сентября 2018

код будет self?.gallery.setBackgroundImage(image, for: .normal)

...