我有一个带有UIImage的UIImageView对象,如下所示:
lazy var imageView: UIImageView = {
let imageName = "logo.png"
let image = UIImage(named: imageName)
let imageView = UIImageView(image: image!)
imageView.contentMode = .scaleAspectFit
return imageView
}()
还有一个动画可以像这样移动图像:
@objc func animateWiggle() {
// Set animation props
let scaleDelta = CGFloat(0.50)
// Set transforms
let wiggleOutHorizontally = CGAffineTransform(scaleX: 1.0 + scaleDelta, y: 1.0)
let wiggleOutVertically = CGAffineTransform(scaleX: 1.0, y: 1.0 + scaleDelta)
// Run animation sequence
UIView.animateKeyframes(withDuration: 1.0, delay: 0.0, options: [.autoreverse, .repeat], animations: {
// Animate wiggle horizontally
UIView.addKeyframe(withRelativeStartTime: 0.0, relativeDuration: 0.5, animations: {
self.imageView.transform = wiggleOutHorizontally
})
// Animate wiggle vertically
UIView.addKeyframe(withRelativeStartTime: 0.5, relativeDuration: 0.5, animations: {
self.imageView.transform = wiggleOutVertically
})
},
completion: nil)
}
我现在正尝试将动画导出到gif文件,但不知道如何处理?我想我需要逐帧访问UIImageView并组装要导出为gif的图像?
任何帮助我指出正确方向的方法都会有所帮助。
谢谢!