【发布时间】:2019-03-27 15:42:51
【问题描述】:
我不想用AVPlayerLayer 重现 Live Photo 缩放效果。为此我使用VideoView:
class VideoView: UIView {
override class var layerClass: AnyClass {
return AVPlayerLayer.self
}
var playerLayer: AVPlayerLayer {
return layer as! AVPlayerLayer
}
var player: AVPlayer? {
get {
return playerLayer.player
}
set {
playerLayer.player = newValue
}
}
}
问题是,每当我在视频播放期间尝试更改视图或图层的transform 属性时,都没有任何变化。但是这些更改会在播放完成后应用。
动画示例:
func zoomIn() {
UIView.animate(
withDuration: 0.2,
delay: 0,
options: .allowAnimatedContent,
animations: {
self.transform = .init(scaleX: 1.1, y: 1.1)
},
completion: { _ in
})
}
【问题讨论】:
标签: ios swift avfoundation core-animation avplayerlayer