FloatArrayEvaluator

class FloatArrayEvaluator : TypeEvaluator<FloatArray!>
kotlin.Any
   ↳ androidx.core.animation.FloatArrayEvaluator

This evaluator can be used to perform type interpolation between float[] 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 a FloatArrayEvaluator that does not reuse the animated value.

<init>(@Nullable reuseArray: FloatArray?)

Create a FloatArrayEvaluator that reuses reuseArray for every evaluate() call.

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

Interpolates the value at each index by the fraction.

Public constructors

<init>

FloatArrayEvaluator()

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

<init>

FloatArrayEvaluator(@Nullable reuseArray: FloatArray?)

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

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

Public methods

evaluate

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

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

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