Sto lavorando con lo ALAssetLibrary
per ottenere le immagini dal mio rullino fotografico per una vista personalizzata che sto creando. Facendolo era piuttosto semplice:Come ottenere un'immagine a bassa risoluzione o Miniatura da ALAssetRepresentation in Swift
library.enumerateGroupsWithTypes(ALAssetsGroupType(ALAssetsGroupSavedPhotos), usingBlock: {
(group: ALAssetsGroup?, stop: UnsafeMutablePointer<ObjCBool>) in
if group != nil {
group!.setAssetsFilter(ALAssetsFilter.allPhotos())
var indexSet = NSIndexSet(indexesInRange: NSMakeRange(0, group!.numberOfAssets() - 1))
group!.enumerateAssetsAtIndexes(indexSet, options: nil, usingBlock: {
(result: ALAsset!, index: Int, stop: UnsafeMutablePointer<ObjCBool>) in
if (result != nil) {
var alAssetRapresentation: ALAssetRepresentation = result.defaultRepresentation()
var url = alAssetRapresentation.url()
var iRef = alAssetRapresentation.fullResolutionImage().takeUnretainedValue()
var image = UIImage(CGImage: iRef)
}
})
}
}) { (NSError) -> Void in
}
Tutto questo funziona perfettamente nel simulatore. Tuttavia su un dispositivo, ottenere il fullResolutionImage()
risulta essere un modo per intensificare la memoria sul dispositivo e causare arresti anomali. Ho capito che ha perfettamente senso, dozzine di immagini ad alta risoluzione caricate in memoria è una pessima idea, quindi mi piacerebbe ridimensionare la qualità e mostrare solo la miniatura dell'immagine. L'unico problema è che non esiste un modo semplice per trovare una miniatura da AlAssetRepresentation
.
Sto provando a lavorare con lo CGImageSourceCreateThumbnailAtIndex
per creare una miniatura ma sono stato molto confuso su come farlo.
Qualsiasi aiuto è molto apprezzato!
Bello! Quindi PhotoKit è quello che dovrei usare: D – Unome
Assolutamente. Il tuo desiderio di caricare l'immagine con le dimensioni ridotte è lodevole, e CGImageSourceCreateThumbnailAtIndex è un ottimo modo per farlo, ma in questa situazione non devi farlo; Photo Kit si prende cura di tutto ciò che fa per te. – matt
Fantastico. Userò PhotoKit quindi, Thx! + 1 C'è qualche buon materiale su come enumerare le foto degli utenti usando PhotoKit a cui mi puoi indirizzare? Ecco dove sono adesso. – Unome