Immediateにいくつかのボタンをアニメーション化してビュー全体を無作為に動かすことはできますが、ボタン 'target'は動きません。ボタンをクリックするには、画面の反対側であっても、作成された元の位置をクリックする必要があります。swift(iOS)でボタンをアニメーション化するときに、ボタンターゲット/ジェスチャー認識子を移動する方法は?
ボタンのターゲットをボタンで移動する方法の簡単な手順はありますか?
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")
}
使用しているアニメーションコードを共有できますか? – Wez
ボタンターゲットは移動する別個のものではありません。あなたはボタンをアニメーションの位置に適切に配置してはいけません。 – Wolverine
私は、ボタンがどのように移動するのかという質問にコードを追加しました。 – user3411006