diff --git a/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java b/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java index 637e49446..06ba6f5a2 100644 --- a/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java +++ b/lottie/src/main/java/com/airbnb/lottie/LottieDrawable.java @@ -691,7 +691,7 @@ public void setMaxProgress(@FloatRange(from = 0f, to = 1f) final float maxProgre lazyCompositionTasks.add(c -> setMaxProgress(maxProgress)); return; } - setMaxFrame((int) MiscUtils.lerp(composition.getStartFrame(), composition.getEndFrame(), maxProgress)); + animator.setMaxFrame(MiscUtils.lerp(composition.getStartFrame(), composition.getEndFrame(), maxProgress)); } /** diff --git a/lottie/src/main/java/com/airbnb/lottie/utils/LottieValueAnimator.java b/lottie/src/main/java/com/airbnb/lottie/utils/LottieValueAnimator.java index 6451c1ae0..a89016828 100644 --- a/lottie/src/main/java/com/airbnb/lottie/utils/LottieValueAnimator.java +++ b/lottie/src/main/java/com/airbnb/lottie/utils/LottieValueAnimator.java @@ -138,8 +138,8 @@ public void setComposition(LottieComposition composition) { if (keepMinAndMaxFrames) { setMinAndMaxFrames( - (int) Math.max(this.minFrame, composition.getStartFrame()), - (int) Math.min(this.maxFrame, composition.getEndFrame()) + Math.max(this.minFrame, composition.getStartFrame()), + Math.min(this.maxFrame, composition.getEndFrame()) ); } else { setMinAndMaxFrames((int) composition.getStartFrame(), (int) composition.getEndFrame()); diff --git a/lottie/src/test/java/com/airbnb/lottie/LottieDrawableTest.java b/lottie/src/test/java/com/airbnb/lottie/LottieDrawableTest.java index 7d3f2e61c..0132d8d5a 100644 --- a/lottie/src/test/java/com/airbnb/lottie/LottieDrawableTest.java +++ b/lottie/src/test/java/com/airbnb/lottie/LottieDrawableTest.java @@ -67,7 +67,7 @@ public void testMaxFrame() { LottieDrawable drawable = new LottieDrawable(); drawable.setComposition(composition); drawable.setMaxProgress(0.25f); - assertEquals(121.99f, drawable.getMaxFrame()); + assertEquals(121f, drawable.getMaxFrame()); } @Test