2016-09-01 2 views
0

Может кто-нибудь объяснить мне, как я могу создать путь круга и перемещать изображение вокруг него.Как перемещать изображение в круге swift

Что мне нужно: enter image description here

let circlePath = UIBezierPath(arcCenter: CGPoint(x: 100,y: 100), radius: CGFloat(20), startAngle: CGFloat(0), endAngle:CGFloat(M_PI * 2), clockwise: true) 

я обнаружил, как путь круга, но в остальном я не знаю сделать. Я новичок в разработке iOS.

И, мне нужно, чтобы это действие начиналось, когда я открываю страницу.

ответ

3

Проверь этот код, то objectToMove является UIView из раскадровки, чтобы проверить, здесь я использую свой код пути, но я добавил больше радиуса

import UIKit 

class ViewController: UIViewController { 
    @IBOutlet weak var objectToMove: UIView! 

    override func viewDidLoad() { 
     super.viewDidLoad() 
     // Do any additional setup after loading the view, typically from a nib. 
    } 

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

     let orbit = CAKeyframeAnimation(keyPath: "position") 
     var affineTransform = CGAffineTransformMakeRotation(0.0) 
     affineTransform = CGAffineTransformRotate(affineTransform, CGFloat(M_PI)) 
     let circlePath = UIBezierPath(arcCenter: CGPoint(x: 100 - (100/2),y: 100 - (100/2)), radius: CGFloat(100), startAngle: CGFloat(0), endAngle:CGFloat(M_PI * 2), clockwise: true) 
     orbit.path = circlePath.CGPath 
     orbit.duration = 4 
     orbit.additive = true 
     orbit.repeatCount = 100 
     orbit.calculationMode = kCAAnimationPaced 
     orbit.rotationMode = kCAAnimationRotateAuto 

     objectToMove.layer .addAnimation(orbit, forKey: "orbit") 
    } 

    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
     // Dispose of any resources that can be recreated. 
    } 


} 

Я надеюсь, что это поможет вам, С уважением

+0

своей работой спасибо, но как я прекратил это при 90º? –

+0

Что вам нужно? вам нужно анимировать 90, а потом? Я думаю, что вам нужно перемещать по кругу все ваши взгляды –

+0

что мне нужно fisrt img wiil move 90º после 2 img переместит другие 90º и 3,4 img то же самое –

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