如何获取 Lottie Animation 中可用的总帧数?
How to get total number of frames available in the Lottie Animation?
我在 android 应用程序中使用随机 Lottie 动画。我需要知道 Lottie 动画中使用的总帧数。根据总帧数,我想将动画从第一帧循环到特定帧。例如。如果 Lottie 文件包含 60 帧,那么我想执行从 1 到 < 60 的任何数字的动画。
我正在使用以下依赖项
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更多关于循环动画特定部分的信息。
您可以在 json 文件中查看第一帧和最后一帧的计数。 ip=第一帧和op:最后一帧。
我在 android 应用程序中使用随机 Lottie 动画。我需要知道 Lottie 动画中使用的总帧数。根据总帧数,我想将动画从第一帧循环到特定帧。例如。如果 Lottie 文件包含 60 帧,那么我想执行从 1 到 < 60 的任何数字的动画。
我正在使用以下依赖项
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更多关于循环动画特定部分的信息。
您可以在 json 文件中查看第一帧和最后一帧的计数。 ip=第一帧和op:最后一帧。