# FabTransformationScrimBehavior

[View Source](https://github.com/material-components/material-components-android/blob/1.14.0/lib/java/com/google/android/material/transformation/FabTransformationScrimBehavior.java)

*** ** * ** ***


```
public class FabTransformationScrimBehavior extends ExpandableTransformationBehavior
```

<br />

|---|---|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||||
| ↳ | [com.google.android.material.transformation.ExpandableBehavior](https://developer.android.com/reference/com/google/android/material/transformation/ExpandableBehavior) |||
|   | ↳ | [com.google.android.material.transformation.ExpandableTransformationBehavior](https://developer.android.com/reference/com/google/android/material/transformation/ExpandableTransformationBehavior) ||
|   |   | ↳ | [com.google.android.material.transformation.FabTransformationScrimBehavior](https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior) |

*** ** * ** ***

> [!CAUTION]
> **This class is deprecated.**   
>
> Use `https://developer.android.com/reference/com/google/android/material/transition/MaterialContainerTransform` instead.

Behavior that should be attached to a scrim that should appear when a `https://developer.android.com/reference/com/google/android/material/floatingactionbutton/FloatingActionButton` is `https://developer.android.com/reference/com/google/android/material/floatingactionbutton/FloatingActionButton#setExpanded(boolean)` expanded}.

## Summary

| ### Constants |
|---|---|
| `static final long` | `https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#COLLAPSE_DELAY() = 0` |
| `static final long` | `https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#COLLAPSE_DURATION() = 150` |
| `static final long` | `https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#EXPAND_DELAY() = 75` |
| `static final long` | `https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#EXPAND_DURATION() = 150` |

| ### Public constructors |
|---|
| `[FabTransformationScrimBehavior](https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#FabTransformationScrimBehavior())()` |
| `[FabTransformationScrimBehavior](https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#FabTransformationScrimBehavior(Context,AttributeSet))(Context context, AttributeSet attrs)` |

| ### Public methods |
|---|---|
| `boolean` | `[layoutDependsOn](https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#layoutDependsOn(CoordinatorLayout,View,View))(CoordinatorLayout parent, View child, View dependency)` |
| `boolean` | `[onTouchEvent](https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#onTouchEvent(CoordinatorLayout,View,MotionEvent))(CoordinatorLayout parent, View child, MotionEvent ev)` |

| ### Protected methods |
|---|---|
| `AnimatorSet` | `[onCreateExpandedStateChangeAnimation](https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#onCreateExpandedStateChangeAnimation(View,View,boolean,boolean))( View dependency, View child, boolean expanded, boolean isAnimating )` Creates an AnimatorSet to be played for this expanded state change. |

| ### Inherited methods |
|---|
| From [com.google.android.material.transformation.ExpandableBehavior](https://developer.android.com/reference/com/google/android/material/transformation/ExpandableBehavior) |---|---| | `https://developer.android.com/reference/com/google/android/material/expandable/ExpandableWidget` | `[findExpandableWidget](https://developer.android.com/reference/com/google/android/material/transformation/ExpandableBehavior#findExpandableWidget(CoordinatorLayout,View))(CoordinatorLayout parent, View child)` | | `static T` | `<T extends https://developer.android.com/reference/com/google/android/material/transformation/ExpandableBehavior> [from](https://developer.android.com/reference/com/google/android/material/transformation/ExpandableBehavior#from(View,java.lang.Class<T>))(View view, https://developer.android.com/reference/java/lang/Class<T> klass)` A utility function to get the `https://developer.android.com/reference/com/google/android/material/transformation/ExpandableBehavior` attached to the `view`. | | `boolean` | `[onDependentViewChanged](https://developer.android.com/reference/com/google/android/material/transformation/ExpandableBehavior#onDependentViewChanged(CoordinatorLayout,View,View))( CoordinatorLayout parent, View child, View dependency )` | | `boolean` | `[onLayoutChild](https://developer.android.com/reference/com/google/android/material/transformation/ExpandableBehavior#onLayoutChild(CoordinatorLayout,View,int))(CoordinatorLayout parent, View child, int layoutDirection)` | |
| From [com.google.android.material.transformation.ExpandableTransformationBehavior](https://developer.android.com/reference/com/google/android/material/transformation/ExpandableTransformationBehavior) |---|---| | `boolean` | `[onExpandedStateChange](https://developer.android.com/reference/com/google/android/material/transformation/ExpandableTransformationBehavior#onExpandedStateChange(View,View,boolean,boolean))( View dependency, View child, boolean expanded, boolean animated )` Reacts to a change in expanded state. | |

## Constants

### COLLAPSE_DELAY

```
public static final long COLLAPSE_DELAY = 0
```

### COLLAPSE_DURATION

```
public static final long COLLAPSE_DURATION = 150
```

### EXPAND_DELAY

```
public static final long EXPAND_DELAY = 75
```

### EXPAND_DURATION

```
public static final long EXPAND_DURATION = 150
```

## Public constructors

### FabTransformationScrimBehavior

```
public [FabTransformationScrimBehavior](https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#FabTransformationScrimBehavior())()
```

### FabTransformationScrimBehavior

```
public [FabTransformationScrimBehavior](https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#FabTransformationScrimBehavior(Context,AttributeSet))(Context context, AttributeSet attrs)
```

## Public methods

### layoutDependsOn

```
public boolean [layoutDependsOn](https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#layoutDependsOn(CoordinatorLayout,View,View))(CoordinatorLayout parent, View child, View dependency)
```

### onTouchEvent

```
public boolean [onTouchEvent](https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#onTouchEvent(CoordinatorLayout,View,MotionEvent))(CoordinatorLayout parent, View child, MotionEvent ev)
```

## Protected methods

### onCreateExpandedStateChangeAnimation

```
protected AnimatorSet [onCreateExpandedStateChangeAnimation](https://developer.android.com/reference/com/google/android/material/transformation/FabTransformationScrimBehavior#onCreateExpandedStateChangeAnimation(View,View,boolean,boolean))(
    View dependency,
    View child,
    boolean expanded,
    boolean isAnimating
)
```

Creates an AnimatorSet to be played for this expanded state change.

If the new `expanded` state is true, the `dependency` should be hidden and the `child` should be shown.

If the new `expanded` state is false, the `dependency` should be shown and the `child` should be hidden.

| Parameters |
|---|---|
| `View dependency` | the `https://developer.android.com/reference/com/google/android/material/expandable/ExpandableWidget` dependency containing the new expanded state. |
| `View child` | the view that should react to the change in expanded state. |
| `boolean expanded` | the new expanded state. |
| `boolean isAnimating` | whether this state change occurred while a previous state change was still |