# ViewSpline

Artifact: [androidx.constraintlayout:constraintlayout](https://developer.android.com/jetpack/androidx/releases/constraintlayout) [View Source](https://cs.android.com/search?q=file:androidx/constraintlayout/motion/utils/ViewSpline.java+class:androidx.constraintlayout.motion.utils.ViewSpline) Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

*** ** * ** ***

<br />

```
abstract class ViewSpline : SplineSet
```

<br />

|---|---|---|
| [kotlin.Any](https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html) |||
| ↳ | [androidx.constraintlayout.core.motion.utils.SplineSet](https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet) ||
|   | ↳ | [androidx.constraintlayout.motion.utils.ViewSpline](https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline) |

Known direct subclasses [ViewSpline.CustomSet](https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline.CustomSet), [ViewSpline.PathRotate](https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline.PathRotate)

|---|---|
| `https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline.CustomSet` |   |
| `https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline.PathRotate` |   |

*** ** * ** ***

## Summary

| ### Nested types |
|---|
| `class https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline.CustomSet : https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline` |
| `class https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline.PathRotate : https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline` |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline#ViewSpline()()` |

| ### Public functions |
|---|---|
| `java-static https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline!` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline#makeCustomSpline(java.lang.String,android.util.SparseArray<androidx.constraintlayout.widget.ConstraintAttribute>)(str: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!, attrList: https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/kotlin/androidx/constraintlayout/widget/ConstraintAttribute!>!)` |
| `java-static https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline!` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline#makeSpline(java.lang.String)(str: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!)` |
| `abstract https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline#setProperty(android.view.View,float)(view: https://developer.android.com/reference/android/view/View.html!, t: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)` the main interface to setting a view property |

### Inherited functions

From [androidx.constraintlayout.core.motion.utils.SplineSet](https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet) `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#get(float)(t: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit!` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#getCurveFit()()` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#getSlope(float)(t: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)` `java-static https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet!` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#makeCustomSpline(java.lang.String,androidx.constraintlayout.core.motion.utils.KeyFrameArray.CustomArray)(str: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!, attrList: https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/KeyFrameArray.CustomArray!)` `java-static https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet!` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#makeCustomSplineSet(java.lang.String,androidx.constraintlayout.core.motion.utils.KeyFrameArray.CustomVar)(str: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!, attrList: https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/KeyFrameArray.CustomVar!)` `java-static https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet!` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#makeSpline(java.lang.String,long)(str: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!, currentTime: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-long/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#setPoint(int,float)(position: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html, value: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#setProperty(androidx.constraintlayout.core.motion.utils.TypedValues,float)(widget: https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/TypedValues!, t: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#setType(java.lang.String)(type: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#setup(int)(curveType: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-int/index.html)` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#toString()()`

### Inherited properties

From [androidx.constraintlayout.core.motion.utils.SplineSet](https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet) `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/CurveFit!` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#mCurveFit()` `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/constraintlayout/core/motion/utils/SplineSet#mTimePoints()` `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-array/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html>!` `https://developer.android.com/reference/kotlin/androidx/constraintlayout/core/motion/utils/SplineSet#mValues()`

## Public constructors

### ViewSpline

Added in 2.2.2

```
ViewSpline()
```

## Public functions

### makeCustomSpline

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

```
java-static fun makeCustomSpline(str: String!, attrList: SparseArray<ConstraintAttribute!>!): ViewSpline!
```

| Parameters |
|---|---|
| `str: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` |   |
| `attrList: https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/kotlin/androidx/constraintlayout/widget/ConstraintAttribute!>!` |   |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline!` |   |

### makeSpline

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

```
java-static fun makeSpline(str: String!): ViewSpline!
```

| Parameters |
|---|---|
| `str: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html!` |   |

| Returns |
|---|---|
| `https://developer.android.com/reference/kotlin/androidx/constraintlayout/motion/utils/ViewSpline!` |   |

### setProperty

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

```
abstract fun setProperty(view: View!, t: Float): Unit
```

the main interface to setting a view property

| Parameters |
|---|---|
| `view: https://developer.android.com/reference/android/view/View.html!` | the view |
| `t: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | the point of time |