Ich animiere einige Tasten in swift, um sich für immer zufällig über die Ansicht zu bewegen, jedoch bewegen sich die Schaltflächen "Ziel" nicht. Um auf die Schaltfläche zu klicken, müssen Sie auf die ursprüngliche Position klicken, an der sie erstellt wurde, auch wenn es sich möglicherweise um die andere Seite des Bildschirms handelt.Wie bewegt man ein Tastenziel/eine Gestenerkennung, wenn die Schaltfläche in swift (iOS) animiert wird?
Hat jemand einfache Anweisungen, wie man die Knöpfe mit dem Knopf bewegt?
func circlePath(view: UIButton, pathDuration: Double){
//create an animation to follow a circular path
let pathAnimation: CAKeyframeAnimation = CAKeyframeAnimation(keyPath: "position")
//interpolate the movement to be more smooth
pathAnimation.calculationMode = kCAAnimationPaced
pathAnimation.repeatCount = .infinity
//no ease in/out to have the same speed along the path
pathAnimation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear)
//the paths circular animation is proportional its size
pathAnimation.duration = pathDuration
//The circle to follow will be inside the circleContainer frame.
//it should be a frame around the center of your view to animate.
//do not make it to large, a width/height of 3-4 will be enough.
let curvedPath: CGMutablePathRef = CGPathCreateMutable()
let circleContainer: CGRect = CGRectInset(view.frame, 23, 23)
CGPathAddEllipseInRect(curvedPath, nil, circleContainer)
//add the path to the animation
pathAnimation.path = curvedPath
//add animation to the view's layer
view.layer.addAnimation(pathAnimation, forKey: "myCircleAnimation")
}
Können Sie den von Ihnen verwendeten Animationscode teilen? – Wez
Button Ziel ist keine separate Sache, die sich bewegen sollte. Die Schaltfläche muss nicht korrekt an der Animationsposition platziert sein. – Wolverine
Ich habe den Code zur Frage hinzugefügt, wie sich die Schaltflächen bewegen. – user3411006