Im 문제가 발생했습니다. 매개 변수로 PFObject를 허용하는 메서드를 만들려고합니다. 이 경우 PFObject는 페이스 북 그림 URL입니다. 이 메서드는 URL을 가져 와서 기본적으로 이미지로 변환합니다. 나는이 코드 블록을 메서드로 만들지 않고이 코드 블록을 사용하면 작동하도록 만들 수 있습니다. 그러나이 메서드를 만들어서 반복하지 않아도됩니다. 내가 사용자의 이미지를 반환 할 때 나는 오류가 sendAsynchronousRequest
의 completionHandler
당신에게 전달하는 정의라고보고하고있다표현식 형식 UIImage를 void swift로 변환 할 수 없습니다. swift
func downloadFBUserImage(object: PFObject?) -> UIImage? {
var userProfilePhotoURLString = object?.valueForKey("pictureURL") as String?
if userProfilePhotoURLString != nil {
var pictureURL: NSURL = NSURL(string: userProfilePhotoURLString!)!
var urlRequest: NSURLRequest = NSURLRequest(URL: pictureURL)
NSURLConnection.sendAsynchronousRequest(urlRequest, queue: NSOperationQueue.mainQueue(), completionHandler: { (NSURLResponse response, NSData data, NSError error) -> Void in
if error == nil && data != nil {
var userProfilePic: UIImage? = UIImage(data: data)
return userProfilePic
}
})
return nil
}
처럼 호출 할 수 있습니다! 필자는 항상 완성 핸들러가 함수 내에 있기 때문에 값을 반환 할 수도 있다고 생각했습니다. 그걸 정리 해줘서 고마워! – user3413380