2015-08-10 15 views
0

Я искал много лет, чтобы найти рабочее решение, как это сделать.Как перемещать узел фигуры X и Y с акселерометром (Swift)

Как я могу перемещать узел формы круга с помощью акселерометра в Swift. Мне нужно, чтобы он двигался влево, вправо, вверх и вниз, поэтому координаты X и Y должны меняться при наклоне устройства.

Я пробовал много способов онлайн, и они не работают, они просто в конечном итоге перемещение круга, только один путь или круг идет неправильные пути и т.д.

Спасибо заранее!

ответ

0

вы могли бы попробовать это:

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) 

просто использовать один и тот же код у. Если у вас есть какие-либо вопросы, дайте мне знать!

Смежные вопросы