# KeyPositions

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/KeyPositions.java+class:androidx.constraintlayout.core.dsl.KeyPositions) Added in [1.1.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#1.1.2)

*** ** * ** ***


```
public class KeyPositions extends Keys
```

<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.KeyPositions](https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions) |

*** ** * ** ***

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

## Summary

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

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#KeyPositions(int,java.lang.String...)(int numOfFrames, String[] targets)` |

| ### Public methods |
|---|---|
| `int[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#getFrames()()` |
| `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#getPercentHeight()()` |
| `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#getPercentWidth()()` |
| `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#getPercentX()()` |
| `float[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#getPercentY()()` |
| `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions.Type` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#getPositionType()()` |
| `String[]` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#getTarget()()` |
| `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#getTransitionEasing()()` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#setFrames(int...)(int[] frames)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#setPercentHeight(float...)(float[] percentHeight)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#setPercentWidth(float...)(float[] percentWidth)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#setPercentX(float...)(float[] percentX)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#setPercentY(float...)(float[] percentY)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#setPositionType(androidx.constraintlayout.core.dsl.KeyPositions.Type)(https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions.Type positionType)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#setTransitionEasing(java.lang.String)(https://developer.android.com/reference/java/lang/String.html transitionEasing)` |
| `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/constraintlayout/core/dsl/KeyPositions#toString()()` |

| ### Inherited methods |
|---|
| 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 constructors

### KeyPositions

```
public KeyPositions(int numOfFrames, String[] targets)
```

## Public methods

### getFrames

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

```
public int[] getFrames()
```

### getPercentHeight

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

```
public float[] getPercentHeight()
```

### getPercentWidth

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

```
public float[] getPercentWidth()
```

### getPercentX

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

```
public float[] getPercentX()
```

### getPercentY

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

```
public float[] getPercentY()
```

### getPositionType

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

```
public KeyPositions.Type getPositionType()
```

### getTarget

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

```
public String[] getTarget()
```

### getTransitionEasing

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

```
public String getTransitionEasing()
```

### setFrames

```
public void setFrames(int[] frames)
```

### setPercentHeight

```
public void setPercentHeight(float[] percentHeight)
```

### setPercentWidth

```
public void setPercentWidth(float[] percentWidth)
```

### setPercentX

```
public void setPercentX(float[] percentX)
```

### setPercentY

```
public void setPercentY(float[] percentY)
```

### setPositionType

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

```
public void setPositionType(KeyPositions.Type positionType)
```

### setTransitionEasing

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

```
public void setTransitionEasing(String transitionEasing)
```

### toString

```
public String toString()
```