# IntArrayEvaluator

Artifact: [androidx.core:core-animation](https://developer.android.com/jetpack/androidx/releases/core) [View Source](https://cs.android.com/search?q=file:androidx/core/animation/IntArrayEvaluator.java+class:androidx.core.animation.IntArrayEvaluator) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/core#1.0.0)

*** ** * ** ***


```
class IntArrayEvaluator : TypeEvaluator<Array<Int>!>
```

<br />

*** ** * ** ***

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 |
|---|
| `https://developer.android.com/reference/kotlin/androidx/core/animation/IntArrayEvaluator#IntArrayEvaluator()()` Create an IntArrayEvaluator that does not reuse the animated value. |
| `https://developer.android.com/reference/kotlin/androidx/core/animation/IntArrayEvaluator#IntArrayEvaluator(int[])(reuseArray: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html>?)` Create an IntArrayEvaluator that reuses `reuseArray` for every evaluate() call. |

| ### Public functions |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html>` | `https://developer.android.com/reference/kotlin/androidx/core/animation/IntArrayEvaluator#evaluate(float,int[],int[])( fraction: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, startValue: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html>, endValue: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html> )` Interpolates the value at each index by the fraction. |

## Public constructors

### IntArrayEvaluator

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/core#1.0.0)

```
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.

| See also |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/core/animation/IntArrayEvaluator#IntArrayEvaluator(int[])` |   |

### IntArrayEvaluator

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/core#1.0.0)

```
IntArrayEvaluator(reuseArray: IntArray<Int>?)
```

Create an IntArrayEvaluator that reuses `reuseArray` for every evaluate() call. Caution must be taken to ensure that the value returned from `https://developer.android.com/reference/kotlin/androidx/core/animation/ValueAnimator#getAnimatedValue()` is not cached, modified, or used across threads. The value will be modified on each `evaluate()` call.

| Parameters |
|---|---|
| `reuseArray: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html>?` | The array to modify and return from `evaluate`. |

## Public functions

### evaluate

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/core#1.0.0)

```
fun evaluate(
    fraction: Float,
    startValue: IntArray<Int>,
    endValue: IntArray<Int>
): Array<Int>
```

Interpolates the value at each index by the fraction. If `https://developer.android.com/reference/kotlin/androidx/core/animation/IntArrayEvaluator#IntArrayEvaluator(int[])` was used to construct this object, `reuseArray` will be returned, otherwise a new `int[]` will be returned.

| Parameters |
|---|---|
| `fraction: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | The fraction from the starting to the ending values |
| `startValue: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html>` | The start value. |
| `endValue: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html>` | The end value. |

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html>` | An `int[]` where each element is an interpolation between the same index in startValue and endValue. |