Sto caricando le immagini dal rullino fotografico tramite PHImageManager, ma le immagini restituite non sono la risoluzione retina. Devo fornire un moltiplicatore me stesso per 2x e 3x o ho qualcosa di sbagliato?PHImageManager restituisce le immagini in pixel o in punti per schermi 2x e 3x?
Ecco il mio codice:
class ReviewableImageView: UIImageView {
...unrelated code
imageRequestOptions = PHImageRequestOptions()
imageRequestOptions.deliveryMode = .HighQualityFormat
imageRequestOptions.resizeMode = .Exact
...unrelated code
self.contentMode = .ScaleAspectFit
self.backgroundColor = UIColor.clearColor()
self.userInteractionEnabled = true
... unrelated code
func reloadImage(){
let imageManager = PHCachingImageManager()//PHImageManager()
imageManager.requestImageForAsset(self.imageAsset,
targetSize: self.frame.size,
contentMode: .AspectFit,
options: imageRequestOptions,
resultHandler: { (image: UIImage!, info: [NSObject : AnyObject]!) in
self.image = image
})
}
}
In realtà, credo perché sta usando 'deliveryMode = .HighQualityFormat' che sarà solo l'alto immagine di qualità, e 'resultHandler' sparerà solo una volta per immagine. [Da doc] (https://developer.apple.com/library/prerelease/ios/documentation/Photos/Reference/PHImageRequestOptions_Class/index.html#//apple_ref/c/tdef/PHImageRequestOptionsDeliveryMode) – Individual11