IntArrayEvaluator

open class IntArrayEvaluator : TypeEvaluator<IntArray!>
kotlin.Any
   ↳ androidx.core.animation.IntArrayEvaluator

This evaluator can be used to perform type interpolation between int[] values. Each index into the array is treated as a separate value to interpolate. For example, evaluating {100, 200} and {300, 400} will interpolate the value at the first index between 100 and 300 and the value at the second index value between 200 and 400.

Summary

Public constructors

Create an IntArrayEvaluator that does not reuse the animated value.

<init>(@Nullable reuseArray: IntArray?)

Create an IntArrayEvaluator that reuses reuseArray for every evaluate() call.

Public methods
open IntArray
evaluate(fraction: Float, @NonNull startValue: IntArray, @NonNull endValue: IntArray)

Interpolates the value at each index by the fraction.

Public constructors

<init>

IntArrayEvaluator()

Create an IntArrayEvaluator that does not reuse the animated value. Care must be taken when using this option because on every evaluation a new int[] will be allocated.

<init>

IntArrayEvaluator(@Nullable reuseArray: IntArray?)

Create an IntArrayEvaluator that reuses reuseArray for every evaluate() call. Caution must be taken to ensure that the value returned from ValueAnimator#getAnimatedValue() is not cached, modified, or used across threads. The value will be modified on each evaluate() call.

Parameters
reuseArray IntArray?: The array to modify and return from evaluate.

Public methods

evaluate

@NonNull open fun evaluate(
    fraction: Float,
    @NonNull startValue: IntArray,
    @NonNull endValue: IntArray
): IntArray

Interpolates the value at each index by the fraction. If IntArrayEvaluator(int[]) was used to construct this object, reuseArray will be returned, otherwise a new int[] will be returned.

Parameters
fraction Float: The fraction from the starting to the ending values
startValue IntArray: The start value.
endValue IntArray: The end value.
Return
IntArray An int[] where each element is an interpolation between the same index in startValue and endValue.