传入方法时,Int参数更改为0

时间:2015-10-23 10:46:24

标签: ios swift methods parameter-passing

我有一个非常奇怪的问题,我希望有人可以解释一下。我在类级别有一个属性,然后我将其传递给另一个类中的方法,在传递属性时等于我所期望的但是一旦传入方法,值就变为0?没有合理的理由说明为什么会发生这种情况。有关更多背景信息,请参阅下面的屏幕截图。

First Method

Correct Value

Second Method

Incorrect Value

我期待听到您的建议。

编辑:根据要求,代码如下:

Networking.updateExistingEntry(RegistrationDataManager.get.currentRegistrationModel(), entryId: entryId) { (success) -> Void in
    print(success)
}

class func updateExistingEntry(registrationModel: RegistrationModel, entryId: Int, completion:(success: Bool) -> Void) {
    Alamofire.request(.PUT, Routing.Entries().URLByAppendingPathComponent("/\(entryId)"), parameters: registrationModel.map(), encoding: .JSON, headers: ["X-SessionToken":Settings.getSessionToken()!]).validate().responseJSON { (request, response, result) -> Void in
        completion(success: result.isSuccess)
    }
}

1 个答案:

答案 0 :(得分:0)

感谢大家的建议,我最终运行了与调试器分离的应用程序(独立),并使用alertview将“输入”的值“打印”给我;这是正确的!这似乎是一个xcode错误。重新安装xcode后,现在一切正常。