私はスケールと変換しようとしています、と私はこれをアニメーション化するUILabel
を持っています。私はこれをブロックのtransform
に設定しています。アニメーションが終了するとCGAffineTransform
がそれを動かすところ、それは正確に残るように、私は.identity
にビューのtransform
背中を設定し、そのフレームを更新したいと思います。擬似コード:、その終了時にIDに戻って変換し、そのフレームを保存する設定?
func animateMovement(label: UILabel,
newWidth: CGFloat,
newHeight: CGFloat,
newOriginX: CGFloat,
newOriginY: CGFloat)
{
UIView.animate(withDuration: duration, animations: {
label.transform = ??? // Something that moves it to the new location and new size
}) {
label.frame = ??? // The final frame from the above animation
label.transform = CGAffineTransform.identity
}
}
私は単にアニメーションブロックに新しいフレームを割り当てない理由として:私は、フレームを変更するアニメーション化する場合は不可能であるアニメーション、合わせて拡張するラベル内のテキストを持っています変換の代わりに。
私は(ラベルが間違っているの起源を持っている)、アニメーションの後に、それが正しい場所ではないので、私が言うことができ、スペースの問題を抱えている座標。ここで
良い仕事!;おめでとう –