私は愚かであるか、またはiOS(またはその両方)でキーフレームアニメーションがどのように機能するか誤解しています。以下の2つのアニメーションブロックは、異なる結果を生成するが、私は彼らが同じになるように期待:animateKeyframesを理解する相対開始時間/遅延
let duration: TimeInterval = 2
UIView.animateKeyframes(withDuration: duration, delay: 0, animations: {
UIView.addKeyframe(withRelativeStartTime: 0.9, relativeDuration: 0.1, animations: {
self.someView.transform = CGAffineTransform(translationX: 0, y: 150)
})
})
UIView.animateKeyframes(withDuration: duration * 0.1, delay: duration * 0.9, animations: {
UIView.addKeyframe(withRelativeStartTime: 0, relativeDuration: 1, animations: {
self.someView.transform = CGAffineTransform(translationX: 0, y: 150)
})
})
誰もが実行されたときにこれらが異なる理由を私は理解するのに役立つことはできますか?最初のものは私が期待しているように見えますが、2番目のものは予想より早くアニメーションを実行するようです。
素晴らしい答えと説明、ありがとう! –