分配的枚举值不会改变

时间:2015-09-13 03:49:21

标签: swift enums sprite-kit

我有一个Player类,它有一个用于更改Player类型的枚举。见下面的init。

GameScene

player.playerType我使用以下方法更改某些播放器属性,但func changePlayer (newPlayerType:Player.PlayerType) { player.spriteTexture = SKTexture(imageNamed: newPlayerType.simpleDescription()) let action = SKAction.setTexture(player.spriteTexture) player.sprite.runAction(action) player.playerType == newPlayerType //this doesn't seem to work, player.playerType remains unchanged every time println("raw value of newPlayerType is \(newPlayerType.rawValue)") println("raw value of player.playerType is \(player.playerType.rawValue)") } 的枚举值在分配时不会更改。原因是什么,我该如何纠正?

intrinsicContentSize

3 个答案:

答案 0 :(得分:1)

您无法为现有枚举分配不同的案例;你可以让现有的枚举改变它自己的情况,但不能通过赋值来改变它。

您可以使用同一个枚举的另一个枚举实例(具有不同的大小写)替换枚举实例(有一个案例),但前提是枚举是var引用,而不是let参考

答案 1 :(得分:0)

==是相等运算符。

您正在寻找=作业(请注意,只有一个等号)。

答案 2 :(得分:0)

检查你的枚举参考应该是var not let