gpt4 book ai didi

swift - 如何使用加速度计移动形状节点 X 和 Y (Swift)

转载 作者:行者123 更新时间:2023-11-30 14:09:23 25 4
gpt4 key购买 nike

多年来我一直在寻找一个可行的解决方案来实现这一点。

如何使用 Swift 中的加速度计移动圆形节点。我需要它向左、向右、向上和向下移动,因此当设备倾斜时,X 和 Y 坐标需要更改。

我在网上尝试了很多方法,但它们不起作用,它们最终只是以一种方式移动圆圈,或者圆圈走向错误的方向等等。

提前致谢!

最佳答案

你可以试试这个:

var manager = CMMotionManager()
var destX:CGFloat = 0.0


Player.position = CGPointMake(self.size.width/2, self.size.height/6.5)
self.addChild(Player)


manager.startAccelerometerUpdates()
manager.accelerometerUpdateInterval = 0.1
manager.startAccelerometerUpdatesToQueue(NSOperationQueue.mainQueue()){
(data, error) in

let currentX = self.Player.position.x

if data!.acceleration.x < 0 {
self.destX = currentX + CGFloat(data!.acceleration.x * 1000)
}

else if data!.acceleration.x > 0 {
self.destX = currentX + CGFloat(data!.acceleration.x * 1000)
}
}


let action = SKAction.moveToX(self.destX, duration: 0.5)
self.Player.runAction(action)

只需对 y 使用相同的代码即可。如果您有任何疑问,请告诉我!

关于swift - 如何使用加速度计移动形状节点 X 和 Y (Swift),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31923372/

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