iOS 中的函数返回错误

Function Return Error in iOS

我有以下函数:prepare() 返回 NSMUtableArray。当我尝试返回一个 json 这是 NSMutableArray 对象时,我收到以下错误:

 'NSMutableArray' is not convertible to 'Void'

函数源代码:

    func prepare() -> NSMutableArray {

    let statusesShowEndpoint = "https://api.twitter.com/1.1/statuses/user_timeline.json"
    let params = ["screen_name": "tikaDotMe"]
    var clientError : NSError?

    let request = Twitter.sharedInstance().APIClient.URLRequestWithMethod(
        "GET", URL: statusesShowEndpoint, parameters: params,
        error: &clientError)

    if request != nil {
        Twitter.sharedInstance().APIClient.sendTwitterRequest(request) {
            (response, data, connectionError) -> Void in
            if (connectionError == nil) {
                var jsonError : NSError?


                let json = NSJSONSerialization.JSONObjectWithData(data,
                    options: nil,
                    error: &jsonError) as NSMutableArray
          //Error: 'NSMutableArray' is not convertible to 'Void'
                return json



            }
            else {
                println("Error: \(connectionError)")
            }
        }
    }
    else {
        println("Error: \(clientError)")
    }
    return [""]
}

问题是您正试图从定义为 returning Void 的闭包中 return json:

    (response, data, connectionError) -> Void

编辑:正如@Paulw11 提到的,您需要在闭包中处理数据,您不能从准备函数中return它。