我在Android应用中使用随机Lottie动画。我需要知道Lottie动画中使用的帧总数。根据总帧数,我想将动画从第一帧循环到特定帧。例如如果Lottie文件包含60帧,则我要执行从1到任何我正在使用以下依赖

implementation 'com.airbnb.android:lottie:3.4.2'

最佳答案

使用addLottieOnCompositionLoadedListener获取您的彩票的Composition

binding.myLottie.addLottieOnCompositionLoadedListener { composition ->
    val startFrame = composition.startFrame
    val endFrame = composition.endFrame
    //will log start/end frame values
    Log.d(TAG, "startFrame : $startFrame, endFrame : $endFrame")
}
然后在动画的特定部分使用setMinAndMaxFrame()
binding.myLottie.addLottieOnCompositionLoadedListener { composition ->
    val startFrame = composition.startFrame
    val endFrame = composition.endFrame
    if (maxFrame < endFrame) {
        binding.myLottie.setMinAndMaxFrame(1, maxFrame)
    }
}
阅读here,了解有关循环播放动画的特定部分的更多信息。

关于android - 如何获得Lottie动画中可用的总帧数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/64040762/

10-10 08:32