我在viewController中设置了一个NSUserDefault,这是它在viewDidLoad中的一部分
if (txt1TotalDefault.valueForKey("TextField1Total") != nil){
TextField1Total = txt1TotalDefault.valueForKey("TextField1Total") as! Double
let T1Total = NSString(format: "TextField1Total: %i", TextField1Total)
}
然后我在所有代码的底部
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
var DestViewController : SecondViewController = segue.destinationViewController as! SecondViewController
DestViewController.TotalMoneyLabel.text = T1Total}
但是它将无法工作,因为它无法识别T1Total,如何获取它才能将其识别或从if语句中删除它,以便它可以正确读取该值
最佳答案
T1Total
应该是类变量。在您的情况下,由于它的方法变量,因此在T1Total
方法中无法访问prepareForSegue
。
伪码
Class yourclass
{
var T1Total = ""
override func viewDidLoad()
{
if (txt1TotalDefault.valueForKey("TextField1Total") != nil){
TextField1Total = txt1TotalDefault.valueForKey("TextField1Total") as! Double
T1Total = NSString(format: "TextField1Total: %i", TextField1Total)
}
}
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
var DestViewController : SecondViewController = segue.destinationViewController as! SecondViewController
DestViewController.TotalMoneyLabel.text = T1Total
}
}
使用此代码,可以在
T1Total
中访问prepareForSegue