YTPlayer WebView视频不跟随动画的持续时间

时间:2018-11-04 22:36:00

标签: ios animation youtube-api swift4 ytplayerview

我在屏幕的左下角放置了一个40 x 40的YTPlayerView,我想使其在屏幕的中心进行动画处理,并在用户点击按钮时同时将尺寸增加到325 x 325。还有另一个动画块可以将其恢复为原始位置和大小。

我将动画持续时间设置为0.5。但是视频没有按照预期进行动画处理。看起来视频和YTPlayerView分别更改了大小。视频立即跳到325 x 325,帧慢慢增长到325 x 325,因此在动画过程中,视频会被裁剪。

当动画返回原始位置和大小时,存在类似的行为。当帧仍以325 x 325居中时,视频立即跳到40 x40。然后在给定的0.5持续时间内,帧变为40 x 40。视频较小时,帧内的剩余区域仅为灰色。

这是YTPlayerView初始化。我正在以编程方式进行操作。

youtubeplayer2 = YTPlayerView.init(frame: CGRect(x: 12, y: 568, width: 40, height: 40))
youtubeplayer2.contentMode = UIViewContentMode.scaleAspectFit
youtubeplayer2.backgroundColor = UIColor.black
youtubeplayer2?.delegate = self

这是第一个动画块

UIView.animate(withDuration: 0.5, delay: 0, options: [.curveEaseIn], animations: {

            self.youtubeplayer2?.frame = CGRect(origin: CGPoint(x: 25, y: 5), size: CGSize(width: 325, height: 325))
            self.youtubeplayer2?.layoutIfNeeded()
        }, completion: nil)

这是第二个动画块

UIView.animate(withDuration: 0.5, delay: 0, usingSpringWithDamping: 1, initialSpringVelocity: 1,
                    options: [.curveEaseOut], animations: {

            self.youtubeplayer2?.frame = CGRect(origin: CGPoint(x: 12, y: 568), size: CGSize(width: 40, height: 40))
            self.youtubeplayer2?.layoutIfNeeded()
        }, completion: nil)

该动画目前的行为方式看起来很糟糕。特别是第二个,灰色区域非常清晰地弹出。有谁知道这是否有解决方案。我想念什么吗?

0 个答案:

没有答案