【发布时间】:2015-12-02 03:07:15
【问题描述】:
我在尝试访问在其他函数中声明的变量时遇到问题。
这是我的代码:
@IBAction func Addbutton(sender: UIButton) {
myImageUploadRequest()
var titlestring: NSString = titre.text as NSString //Var i want to access
var description:NSString = desc.text as NSString
var price : NSString = prix.text as NSString
}
func createBodyWithParameters(parameters: [String: String]?, filePathKey: String?, imageDataKey: NSData, boundary: String) -> NSData {
var body = NSMutableData();
if parameters != nil {
for (key, value) in parameters! {
body.appendString("--\(boundary)\r\n")
body.appendString("Content-Disposition: form-data; name=\"\(key)\"\r\n\r\n")
body.appendString("\(value)\r\n")
}
}
//here i want to access to the titlestring var declared in my addButton func
println(titlestring)
let filename = titlestring
}
我尝试返回 var 但没有成功。
【问题讨论】:
-
当您退出函数时,函数中声明的所有变量都将被“销毁”。所以标题字符串在 Addbutton() 之外不存在。你需要在函数之外声明titlestring,或者从Addbutton返回它
-
您不能访问在其他方法中声明的局部变量。这根本不可能。也许如果你描述你在高层次上解决的实际问题(即创建一个按钮来执行 XYZ 并生成 PQR 的描述,其中必须包含按钮中的一些数据)有人可以提出更好的方法。