# Reference

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

*** ** * ** ***


```
public interface Reference
```

<br />

Known direct subclasses [ConstraintReference](https://developer.android.com/reference/androidx/constraintlayout/core/state/ConstraintReference), [GuidelineReference](https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/GuidelineReference)

|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/core/state/ConstraintReference` |   |
| `https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/GuidelineReference` |   |

Known indirect subclasses [AlignHorizontallyReference](https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/AlignHorizontallyReference), [AlignVerticallyReference](https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/AlignVerticallyReference), [BarrierReference](https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/BarrierReference), [ChainReference](https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/ChainReference), [FlowReference](https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/FlowReference), [GridReference](https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/GridReference), [HelperReference](https://developer.android.com/reference/androidx/constraintlayout/core/state/HelperReference), [HorizontalChainReference](https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/HorizontalChainReference), [VerticalChainReference](https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/VerticalChainReference)

|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/AlignHorizontallyReference` |   |
| `https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/AlignVerticallyReference` |   |
| `https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/BarrierReference` |   |
| `https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/ChainReference` | `https://developer.android.com/reference/androidx/constraintlayout/core/state/HelperReference` for Chains. |
| `https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/FlowReference` | The FlowReference class can be used to store the relevant properties of a Flow Helper when parsing the Flow Helper information in a JSON representation. |
| `https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/GridReference` | A HelperReference of a Grid Helper that helps enable Grid in Compose |
| `https://developer.android.com/reference/androidx/constraintlayout/core/state/HelperReference` |   |
| `https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/HorizontalChainReference` |   |
| `https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/VerticalChainReference` |   |

*** ** * ** ***

## Summary

| ### Public methods |
|---|---|
| `abstract void` | `https://developer.android.com/reference/androidx/constraintlayout/core/state/Reference#apply()()` |
| `abstract https://developer.android.com/reference/androidx/constraintlayout/core/widgets/ConstraintWidget` | `https://developer.android.com/reference/androidx/constraintlayout/core/state/Reference#getConstraintWidget()()` |
| `abstract https://developer.android.com/reference/androidx/constraintlayout/core/state/helpers/Facade` | `https://developer.android.com/reference/androidx/constraintlayout/core/state/Reference#getFacade()()` |
| `abstract https://developer.android.com/reference/java/lang/Object.html` | `https://developer.android.com/reference/androidx/constraintlayout/core/state/Reference#getKey()()` |
| `abstract void` | `https://developer.android.com/reference/androidx/constraintlayout/core/state/Reference#setConstraintWidget(androidx.constraintlayout.core.widgets.ConstraintWidget)(https://developer.android.com/reference/androidx/constraintlayout/core/widgets/ConstraintWidget widget)` |
| `abstract void` | `https://developer.android.com/reference/androidx/constraintlayout/core/state/Reference#setKey(java.lang.Object)(https://developer.android.com/reference/java/lang/Object.html key)` |

## Public methods

### apply

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

```
abstract void apply()
```

### getConstraintWidget

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

```
abstract ConstraintWidget getConstraintWidget()
```

### getFacade

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

```
abstract Facade getFacade()
```

### getKey

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

```
abstract Object getKey()
```

### setConstraintWidget

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

```
abstract void setConstraintWidget(ConstraintWidget widget)
```

### setKey

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

```
abstract void setKey(Object key)
```