# 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)

*** ** * ** ***


```
public abstract class ViewSpline extends SplineSet
```

<br />

|---|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object.html) |||
| ↳ | [androidx.constraintlayout.core.motion.utils.SplineSet](https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet) ||
|   | ↳ | [androidx.constraintlayout.motion.utils.ViewSpline](https://developer.android.com/reference/androidx/constraintlayout/motion/utils/ViewSpline) |

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

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

*** ** * ** ***

## Summary

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

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

| ### Public methods |
|---|---|
| `static https://developer.android.com/reference/androidx/constraintlayout/motion/utils/ViewSpline` | `https://developer.android.com/reference/androidx/constraintlayout/motion/utils/ViewSpline#makeCustomSpline(java.lang.String,android.util.SparseArray<androidx.constraintlayout.widget.ConstraintAttribute>)(https://developer.android.com/reference/java/lang/String.html str, https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintAttribute> attrList)` |
| `static https://developer.android.com/reference/androidx/constraintlayout/motion/utils/ViewSpline` | `https://developer.android.com/reference/androidx/constraintlayout/motion/utils/ViewSpline#makeSpline(java.lang.String)(https://developer.android.com/reference/java/lang/String.html str)` |
| `abstract void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/utils/ViewSpline#setProperty(android.view.View,float)(https://developer.android.com/reference/android/view/View.html view, float t)` the main interface to setting a view property |

| ### Inherited fields |
|---|
| From [androidx.constraintlayout.core.motion.utils.SplineSet](https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet) |---|---| | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/CurveFit` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#mCurveFit()` | | `int[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#mTimePoints()` | | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/motion/utils/SplineSet#mValues()` | |

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

## Public constructors

### ViewSpline

Added in 2.2.2

```
public ViewSpline()
```

## Public methods

### makeCustomSpline

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

```
public static ViewSpline makeCustomSpline(String str, SparseArray<ConstraintAttribute> attrList)
```

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/lang/String.html str` |   |
| `https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintAttribute> attrList` |   |

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

### makeSpline

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

```
public static ViewSpline makeSpline(String str)
```

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/lang/String.html str` |   |

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

### setProperty

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

```
public abstract void setProperty(View view, float t)
```

the main interface to setting a view property

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/view/View.html view` | the view |
| `float t` | the point of time |