1

Alamofire コールバックの成功時に構造体の配列を返したいメソッドがあります。

func getPopularMedias() -> BFTask {
  let instaUrl: String = "https://api.instagram.com/v1/media/popular"
  let user: PFUser = currentUser()
  let accessToken = user.objectForKey("accessToken") as! String
  var medias: [Media] = []

  let task = BFTaskCompletionSource()

  Alamofire.request(.GET, instaUrl, parameters: ["access_token": accessToken])
    .responseJSON { request, response, data in
      var json = JSON(data.value!)

      for(_, subJson): (String, JSON) in json["data"] {
        let image: UIImage = NSURL(string: subJson["images"]["low_resolution"]["url"].stringValue)
        .flatMap { NSData(contentsOfURL: $0) }
        .flatMap { UIImage(data: $0) }!

      let profileImage: UIImage = NSURL(string: subJson["user"]["profile_picture"].stringValue)
        .flatMap { NSData(contentsOfURL: $0) }
        .flatMap { UIImage(data: $0) }!

      medias.append(Media(name: subJson["user"]["full_name"].stringValue, image: image, profileImage: profileImage))
    }
    task.setResult(medias)
}
return task.task
}

設定中task.setResultに、というエラーが表示されますcannot convert value of [Media] to expected argument AnyObject!

現在、XCode 7.0 GM リリースと Swift 2 でこれを実行しています。

4

2 に答える 2