# KeyCycles

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

*** ** * ** ***


```
public class KeyCycles extends KeyAttributes
```

<br />

|---|---|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object.html) ||||
| ↳ | [androidx.constraintlayout.core.dsl.Keys](https://developer.android.com/reference/androidx/constraintlayout/core/dsl/Keys) |||
|   | ↳ | [androidx.constraintlayout.core.dsl.KeyAttributes](https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes) ||
|   |   | ↳ | [androidx.constraintlayout.core.dsl.KeyCycles](https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles) |

*** ** * ** ***

Provides the API for creating a KeyCycle Object for use in the Core ConstraintLayout \&MotionLayout system This allows multiple KeyCycle positions to defined in one object.

## Summary

| ### Nested types |
|---|
| `public enum https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles.Wave` |

| ### Public methods |
|---|---|
| `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles#getWaveOffset()()` |
| `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles#getWavePeriod()()` |
| `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles#getWavePhase()()` |
| `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles.Wave` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles#getWaveShape()()` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles#setWaveOffset(float...)(float[] waveOffset)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles#setWavePeriod(float...)(float[] wavePeriod)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles#setWavePhase(float...)(float[] wavePhase)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles#setWaveShape(androidx.constraintlayout.core.dsl.KeyCycles.Wave)(https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles.Wave waveShape)` |

| ### Protected methods |
|---|---|
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyCycles#attributesToString(java.lang.StringBuilder)(https://developer.android.com/reference/java/lang/StringBuilder.html builder)` |

| ### Inherited fields |
|---|
| From [androidx.constraintlayout.core.dsl.KeyAttributes](https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes) |---|---| | `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#TYPE()` | |

| ### Inherited methods |
|---|
| From [androidx.constraintlayout.core.dsl.KeyAttributes](https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes) |---|---| | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getAlpha()()` | | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes.Fit` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getCurveFit()()` | | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getPivotX()()` | | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getPivotY()()` | | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getRotation()()` | | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getRotationX()()` | | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getRotationY()()` | | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getScaleX()()` | | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getScaleY()()` | | `String[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getTarget()()` | | `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getTransitionEasing()()` | | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getTransitionPathRotate()()` | | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getTranslationX()()` | | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getTranslationY()()` | | `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getTranslationZ()()` | | `KeyAttributes.Visibility[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#getVisibility()()` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setAlpha(float...)(float[] alpha)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setCurveFit(androidx.constraintlayout.core.dsl.KeyAttributes.Fit)(https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes.Fit curveFit)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setPivotX(float...)(float[] pivotX)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setPivotY(float...)(float[] pivotY)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setRotation(float...)(float[] rotation)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setRotationX(float...)(float[] rotationX)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setRotationY(float...)(float[] rotationY)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setScaleX(float[])(float[] scaleX)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setScaleY(float[])(float[] scaleY)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setTarget(java.lang.String[])(String[] target)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setTransitionEasing(java.lang.String)(https://developer.android.com/reference/java/lang/String.html transitionEasing)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setTransitionPathRotate(float...)(float[] transitionPathRotate)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setTranslationX(float[])(float[] translationX)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setTranslationY(float[])(float[] translationY)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setTranslationZ(float[])(float[] translationZ)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#setVisibility(androidx.constraintlayout.core.dsl.KeyAttributes.Visibility...)(KeyAttributes.Visibility[] visibility)` | | `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyAttributes#toString()()` | |
| From [androidx.constraintlayout.core.dsl.Keys](https://developer.android.com/reference/androidx/constraintlayout/core/dsl/Keys) |---|---| | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/Keys#append(java.lang.StringBuilder,java.lang.String,java.lang.String[])(https://developer.android.com/reference/java/lang/StringBuilder.html builder, https://developer.android.com/reference/java/lang/String.html name, String[] array)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/Keys#append(java.lang.StringBuilder,java.lang.String,float[])(https://developer.android.com/reference/java/lang/StringBuilder.html builder, https://developer.android.com/reference/java/lang/String.html name, float[] array)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/Keys#append(java.lang.StringBuilder,java.lang.String,float)(https://developer.android.com/reference/java/lang/StringBuilder.html builder, https://developer.android.com/reference/java/lang/String.html name, float value)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/Keys#append(java.lang.StringBuilder,java.lang.String,int)(https://developer.android.com/reference/java/lang/StringBuilder.html builder, https://developer.android.com/reference/java/lang/String.html name, int value)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/Keys#append(java.lang.StringBuilder,java.lang.String,java.lang.String)(https://developer.android.com/reference/java/lang/StringBuilder.html builder, https://developer.android.com/reference/java/lang/String.html name, https://developer.android.com/reference/java/lang/String.html value)` | | `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/Keys#unpack(java.lang.String[])(String[] str)` | |

## Public methods

### getWaveOffset

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

```
public float[] getWaveOffset()
```

### getWavePeriod

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

```
public float[] getWavePeriod()
```

### getWavePhase

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

```
public float[] getWavePhase()
```

### getWaveShape

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

```
public KeyCycles.Wave getWaveShape()
```

### setWaveOffset

```
public void setWaveOffset(float[] waveOffset)
```

### setWavePeriod

```
public void setWavePeriod(float[] wavePeriod)
```

### setWavePhase

```
public void setWavePhase(float[] wavePhase)
```

### setWaveShape

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

```
public void setWaveShape(KeyCycles.Wave waveShape)
```

## Protected methods

### attributesToString

```
protected void attributesToString(StringBuilder builder)
```