【发布时间】:2014-09-14 21:00:21
【问题描述】:
我在使用 iPhone 5S 作为开发目标(模拟器和真实设备)时发现了一个奇怪的行为。
我想用SKAction.scaleTo 缩放SKSpriteNode。这适用于 iPhone 4S 和 iPhone 5 模拟器(测试 iOS 7.0.3 和 iOS 8)。
但在 iPhone 5S 模拟器上,节点无法扩展。在我真正的 iPhone 5S 上,它也无法缩放。
这是我的代码:
for tile in tileArray{
if(tile.color == searchColor){
var action = SKAction.scaleTo(0.5, duration: 0.5)
var action2 = SKAction.scaleTo(1, duration: 0.5)
tile.runAction(SKAction.repeatActionForever(SKAction.sequence([action, action2])))
}
}
编辑:
我现在发现,在 iPhone 5S 上没有调用 if 块。我不知道为什么。对于其他 iPhone,它可以工作。但是如你所见,这两种颜色是一样的:
UIDeviceRGBColorSpace 0.203922 0.286275 0.368627 1
UIDeviceRGBColorSpace 0.203922 0.286275 0.368627 1
这怎么可能?
重要提示:其他 SKaction.scaleTo 操作正常工作。
【问题讨论】:
-
你能确认它正在运行序列吗? AKA 获得通过 tile.color==searchcolor.
-
@meisenman 你是绝对正确的。它没有被调用,但 for 循环正在工作。但为什么呢?
-
好吧,至少我们可以缩小一些导致您的 SKAction 成为问题的用户特定错误。希望其他人可以对颜色系统有更多的了解。
标签: swift sprite-kit ios-simulator skaction rescale