Swift var 没有改变

标签 swift

第一篇文章,在写作之前确实尝试寻找答案,但没有一个帖子给我答案,所以我问。 我敢打赌这很简单,只是我看不到。

我有一个得分变量。我想每次发生碰撞时就加1。 是这样写的

var score:Int = 0
override func didMoveToView(view: SKView) {
var scoreOnScreen = SKLabelNode(text:"(\score)")

然后,在碰撞函数中,子弹和敌人被移除后

func bulletDidCollideWithEnemy(bullet: SKSpriteNode, enemyOne: SKSpriteNode) {
  score++
  bullet.removeFromParent() 
  enemyOne.removeFromParent() 
}

但在屏幕上,它仍然是 0。

为什么?

最佳答案

您没有在 UI 上更新您的 score。您只是在更新变量 score。编写代码以更新 bulletDidCollideWithEnemy 中的 scoreOnScreen

func bulletDidCollideWithEnemy(bullet: SKSpriteNode, enemyOne: SKSpriteNode) {
  score++
  scoreOnScreen.text = "\(score)"
  bullet.removeFromParent() 
  enemyOne.removeFromParent() 
}

关于Swift var 没有改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26567863/

相关文章:

ios - 没有 'decodeIfPresent' 候选产生预期的上下文结果类型 '[ModelMemberSubCategory]!'

ios - 从 swift 4 breaks 应用更新

ios - Firebase 数据库并检查手机联系人 ios

swift - 在 Swift 中,给定一个枚举变量,我如何判断它是哪种情况?

swift - 为 Ionic 应用程序开发 Cordova 插件时出错,应用程序未使用 Ionic 2 构建 Ios 命令构建,它找不到框架类

objective-c - 实例引用在 Swift 中真的有效吗?

ios - 带有 UIImage 或远程 URL 的 UNNotificationAttachment

ios - 在 iOS SceneKit 中如何将 .dae 文件加载到 SCNNode 中?

ios - OSX 和 iOS 共享 swift 模块

swift - 完美模板