0

私は加速度計を使用するためにこのコードを迅速に持っていますが、条件が true のときにビューをアニメーション化する必要がありますが、アニメーション化する必要はありません。

アニメーション化するにはどうすればよいですか。ありがとう

    import CoreMotion

lazy var motionManager = CMMotionManager()


override func viewDidAppear(animated: Bool) {
    super.viewDidLoad()

    if motionManager.accelerometerAvailable{
        let queue = NSOperationQueue()
        motionManager.startAccelerometerUpdatesToQueue(queue, withHandler:
            {(data: CMAccelerometerData!, error: NSError!) in

                if data.acceleration.x <= -0.22 && data.acceleration.x >= -0.24 {

                         UIView.animateWithDuration(1 ,delay: 0, options: .CurveEaseInOut  | .AllowUserInteraction,
                            animations: {

                                self.text.frame = CGRectMake(100, 0, 42,21)
                        },
                        completion:{ finished in

                    })

                }

            }
        )
    } else {
        println("Accelerometer is not available")
    }

}
4

2 に答える 2

0
 import CoreMotion

lazy var manager = CMMotionManager()


if manager.accelerometerAvailable {
        manager.accelerometerUpdateInterval = 0.2
        manager.startAccelerometerUpdatesToQueue(NSOperationQueue.mainQueue()) {
            [weak self] (data: CMAccelerometerData!, error: NSError!) in

            if data.acceleration.x >= 0.1 {

                var  petalo1 = UIImageView()

                petalo1.image = UIImage(named: "petalo1.png")
                petalo1.frame = CGRectMake (20, 75, 75, 75)
                self?.view.addSubview(petalo1)


                UIView.animateWithDuration(4 ,delay: 0, options: .CurveEaseInOut  | .AllowUserInteraction,
                    animations: {
                        petalo1.frame = CGRectMake (20, 811, 75, 75)
                    },
                    completion:{ finished in
                        petalo1.removeFromSuperview()
                })

            }
        }
    }else {
                println("Accelerometer is not available")
    }
于 2015-03-09T05:09:27.163 に答える