VideoSupportFragment, изменяющий размер видео - PullRequest
0 голосов
/ 07 января 2020

Когда я пытаюсь анимировать изменение размера фрагмента VideoSupport, само видео обрезается.

Код анимации для справки:

val params = playbackVideoFragment.layoutParams

val resizeXanim = ValueAnimator.ofFloat(playerWidth, containerWidth * scaleX).apply {
    addUpdateListener {
        params .width = (it.animatedValue as Float).toInt()
    }
}

val resizeYanim = ValueAnimator.ofFloat(playerHeight, containerHeight * scaleY).apply {
    addUpdateListener {
       params .height = (it.animatedValue as Float).toInt()
    }
}

val paramsAnim = ValueAnimator.ofInt(0, 100).apply {
    addUpdateListener { playbackVideoFragment.layoutParams = params }
}

AnimatorSet().apply {
    playTogether(resizeXanim, resizeYanim, paramsAnim)
    duration = ANIMATION_DURATION_MS
    start()
}

1 Ответ

0 голосов
/ 07 января 2020

Через некоторое время выяснил, что суперкомментирующий метод onVideoSizeChanged из VideoSupportFragment решает проблему.

class CustomVideoFragment : VideoSupportFragment() {
    ...
    override fun onVideoSizeChanged(width: Int, height: Int) {
        //super.onVideoSizeChanged(width, height)
    }
    ...
}
...