gpt4 book ai didi

swift - 在 Xcode 6 中工作的代码不适用于 Xcode 7

转载 作者:行者123 更新时间:2023-11-28 09:02:37 27 4
gpt4 key购买 nike

这是我的第一个问题,对于糟糕的英语表示歉意。

我最近使用 Xcode 6.4 制作了一个游戏应用程序,它在 IOS 设备上运行良好。但是,当我上传 Xcode 7 Beta 4 来开发我的 IOS 9 应用程序时出现了问题。

我在 Xcode 6 中使用这段代码,它限制了我的英雄在 X 轴的 -1.0 和 1.0 之间翻转,我的英雄无法翻转到 -2.0 :

func flip() {
isUpsideDown = !isUpsideDown

var scale: CGFloat!
if isUpsideDown {
scale = -1.0
} else {
scale = 1.0
}
let translate = SKAction.moveByX(0, y: scale*(size.height + kMLGroundHeight), duration: 0.1)
let flip = SKAction.scaleYTo(scale, duration: 0.1)

runAction(translate)
runAction(flip)
}

但是现在在 Xcode 7 中这个 cod 似乎不起作用。一开始它看起来不错,但随后英雄开始翻转到 -2.0、-3.0,这一直持续到英雄超出框架。

这也是我在 Xcode 6 上完美运行的游戏场景代码:

  override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {

if isGameOver {

restart()

} else if !isStarted {

start()

} else {

hero.flip()

}

}

我是这方面的新手,如果您能回答我的问题,我将不胜感激。

最佳答案

如何在 flip 函数中放置一个断点并单步执行它正在更改的位置并查看跟踪...

或者一种集中的断点策略是在值设置为超出范围时将 didSet 添加到您的 scale 属性。然后查看跟踪以了解出现问题的原因。

修改 scale 使其看起来像这样。

var scale:CGFloat!{
didSet{
if scale < -1.0 || scale > 1.0{
print("scale is out of bounds : \(scale)")
print("stop here")//<< put breakpoint on this line
}
}
}

如果您在使用断点方面需要帮助,请查看 this .

关于swift - 在 Xcode 6 中工作的代码不适用于 Xcode 7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31643243/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com