2016-08-24 5 views
3

URL의 이미지를 표시하는 UICollectionViewCell에 200px x 200px UIImageView이 있습니다. 문제는 URL에서 제공하는 해상도의 이미지를 알 수 없기 때문에 메모리 크기 때문에 UIImageView에 배치하기 전에 크기를 조정하는 것이 더 좋습니다.크기 변경 AlamofireImage로 이미지 다운로드

이미 이미지

let url = NSURL(string: "http:\(product.picUrl)") 
self.imgProductItem.af_setImageWithURL(url!, placeholderImage: UIImage(named: "app_default-resize")) 

내가 궁금가 UIImageView에 배치 사용하기 전에 먼저 크기를 조절할 수있는 방법이 다운로드 alamofire 사용할 수 있습니까? 그리고 메모리 사용량을 절약하기 위해 이미지를 다운로드하기위한 팁이 있다면, 나는 그것을 듣고 싶습니다.

도움을 주시면 감사하겠습니다. 고맙습니다.

답변

0
func ResizeImage(image: UIImage, targetSize: CGSize) -> UIImage { 

    let rect = CGRectMake(0, 0, targetSize.width, targetSize.height) 

    UIGraphicsBeginImageContextWithOptions(targetSize, false, 1.0) 
    image.drawInRect(rect) 
    let newImage = UIGraphicsGetImageFromCurrentImageContext() 
    UIGraphicsEndImageContext() 

    return newImage 
} 
+0

그래서 alamofire에는 이러한 기능이 포함되어 있지 않습니까? –

+0

Alamofire가 자체적으로 크기 조정을하지 않는다고 생각합니다. URL 또는 NSData를 통해 이미지를 가져온 다음 이미지를 만든 다음 크기를 조정해야한다고 생각합니다. Alamofire는 "데이터베이스에서 가져 오는 것"API 종류 중 하나입니다. – impression7vx

+2

필터를 통해 크기가 조정됩니다. https://github.com/Alamofire/AlamofireImage#image-filters-1을 참조하십시오. – Rob