为什么我的代码在模拟器上工作但不在我的iPhone上?

时间:2015-06-18 00:38:46

标签: ios swift sprite-kit

我在游戏中模拟了SKFieldNode(电场)。该字段在模拟器中完美运行,但是当我在iPhone 6 Plus上运行时,没有任何反应 - 就像没有字段一样。

以下是制作该字段的代码(它是SKScene的成员变量):

    let orbiterField = SKFieldNode.electricField()

以下是调整某些参数的代码(在didMoveToView中):

    orbiterField.strength = 0
    orbiterField.categoryBitMask = FieldCategory.OrbiterField.rawValue
    orbiterField.falloff = Float(orbiterFieldFalloff)

    let orbiter = childNodeWithName("Orbiter") as! SKSpriteNode
    orbiter.addChild(orbiterField)

我知道我将场强设置为零。这没关系,因为当我的游戏中发生某些事情时,场地的力量会发生变化。这是改变它的代码:

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, Int64(amountOfTimeFieldExists * Double(NSEC_PER_SEC))) , dispatch_get_main_queue()) {
                self.numberOfFieldOrbsActive--
                self.orbiterField.strength = self.numberOfFieldOrbsActive != 0 ? Float(self.orbiterFieldStrength) : 0
            }

我也尝试在didMoveToView中将强度设置为非零值,但这并未改变任何内容。

最后,我尝试打印“SKFieldNode.description()”。在(iPhone 6 plus)模拟器上运行时,这就是我得到的:

enter image description here

然而,当我在iPhone 6 plus上运行时,这就是我得到的:

enter image description here

有人可以帮帮我吗?如果你没有答案,它很好,我甚至会感谢有人建议我可以尝试调试问题的方法。什么都有帮助。我不知道该尝试什么,并且已经花了很长时间。谢谢。

0 个答案:

没有答案