点击按钮后,我转到新的视图控制器。
我可以在IBOutlet中使用var score = 0
制作积分并显示我使用Score.text = "\(++score)"
的点。
如何将分数传递给游戏?屏幕/视图控制器到名为" resultScore"?
的标签答案 0 :(得分:4)
在目标视图控制器中添加属性secondViewController
,并使用prepareForSegue
Current View Controller
override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
if (segue.identifier == "segueTest") {
var svc = segue!.destinationViewController as secondViewController;
svc.toPass = textField.text
}
}
<{>>在secondViewController
中,您可以定义一个变量,例如String
var toPass:String!
在secondViewController
功能下的viewDidLoad
添加此代码
println(\(toPass))
答案 1 :(得分:0)
FirstViewController
@IBOutlet weak var textField: UITextField!
...
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if let vc = segue.destinationViewController as? GameOverViewController {
vc.score = Int(textField?.text)
}
}
...
SecondViewController
var score: Int!
@IBOutlet weak var label: UILabel!
...
override func viewDidLoad() {
super.viewDidLoad()
label.text = String(score)
}
此方法将在按下按钮时调用,在此处您可以为第二个视图控制器设置一些属性
答案 2 :(得分:0)
实现这一目标的一种简单方法是,您可以使用 If cell2.Value <> "" Then
' cell2 is a cell in column B
' Set cell in column A equal to column B
cell2.Offset(0, -1).Value = cell2.Value
' Set cell in column D equal to column C
cell2.Offset(0, 2).Value = cell2.Offset(0, 1).Value
End If
。
首先在你的NSUserDefault
中,当你提高分数时,你可以用这种方式存储你的分数:
playScene
在您的下一个视图控制器中,您可以通过这种方式获得分数:
Score.text = "\(++score)"
NSUserDefaults.standardUserDefaults().setInteger(score, forKey: "userScore")
请记住,resultScore = NSUserDefaults.standardUserDefaults().integerForKey("userScore")
的类型应为resultScore
。