# RepeatModeUtil

Artifact: [androidx.media3:media3-common](https://developer.android.com/jetpack/androidx/releases/media3) [View Source](https://cs.android.com/search?q=file:androidx/media3/common/util/RepeatModeUtil.java+class:androidx.media3.common.util.RepeatModeUtil)

*** ** * ** ***


```
@UnstableApi
public final class RepeatModeUtil
```

<br />

*** ** * ** ***

Util class for repeat mode handling.

## Summary

| ### Nested types |
|---|
| `@https://developer.android.com/reference/java/lang/annotation/Documented.html @https://developer.android.com/reference/java/lang/annotation/Retention.html(value = https://developer.android.com/reference/java/lang/annotation/RetentionPolicy.html#SOURCE) @https://developer.android.com/reference/java/lang/annotation/Target.html(value = ) @https://developer.android.com/reference/androidx/annotation/IntDef(flag = true, value = ) public annotation https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil.RepeatToggleModes` Set of repeat toggle modes. |

| ### Constants |
|---|---|
| `static final int` | `https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil#REPEAT_TOGGLE_MODE_ALL() = 2` "Repeat All" button enabled. |
| `static final int` | `https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil#REPEAT_TOGGLE_MODE_NONE() = 0` All repeat mode buttons disabled. |
| `static final int` | `https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil#REPEAT_TOGGLE_MODE_ONE() = 1` "Repeat One" button enabled. |

| ### Public methods |
|---|---|
| `static int` | `@https://developer.android.com/reference/androidx/media3/common/Player.RepeatMode https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil#getNextRepeatMode(int,int)( @https://developer.android.com/reference/androidx/media3/common/Player.RepeatMode int currentMode, @https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil.RepeatToggleModes int enabledModes )` Gets the next repeat mode out of `enabledModes` starting from `currentMode`. |
| `static boolean` | `https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil#isRepeatModeEnabled(int,int)( @https://developer.android.com/reference/androidx/media3/common/Player.RepeatMode int repeatMode, @https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil.RepeatToggleModes int enabledModes )` Verifies whether a given `https://developer.android.com/reference/androidx/media3/common/Player.RepeatMode` is enabled in the bitmask of `https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil.RepeatToggleModes`. |

## Constants

### REPEAT_TOGGLE_MODE_ALL

```
public static final int REPEAT_TOGGLE_MODE_ALL = 2
```

"Repeat All" button enabled.

### REPEAT_TOGGLE_MODE_NONE

```
public static final int REPEAT_TOGGLE_MODE_NONE = 0
```

All repeat mode buttons disabled.

### REPEAT_TOGGLE_MODE_ONE

```
public static final int REPEAT_TOGGLE_MODE_ONE = 1
```

"Repeat One" button enabled.

## Public methods

### getNextRepeatMode

```
@Player.RepeatMode
public static int getNextRepeatMode(
    @Player.RepeatMode int currentMode,
    @RepeatModeUtil.RepeatToggleModes int enabledModes
)
```

Gets the next repeat mode out of `enabledModes` starting from `currentMode`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/media3/common/Player.RepeatMode int currentMode` | The current `https://developer.android.com/reference/androidx/media3/common/Player.RepeatMode`. |
| `@https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil.RepeatToggleModes int enabledModes` | The bitmask of enabled `https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil.RepeatToggleModes`. |

| Returns |
|---|---|
| `int` | The next repeat mode. |

### isRepeatModeEnabled

```
public static boolean isRepeatModeEnabled(
    @Player.RepeatMode int repeatMode,
    @RepeatModeUtil.RepeatToggleModes int enabledModes
)
```

Verifies whether a given `https://developer.android.com/reference/androidx/media3/common/Player.RepeatMode` is enabled in the bitmask of `https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil.RepeatToggleModes`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/media3/common/Player.RepeatMode int repeatMode` | The `https://developer.android.com/reference/androidx/media3/common/Player.RepeatMode` to check. |
| `@https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil.RepeatToggleModes int enabledModes` | The bitmask of enabled `https://developer.android.com/reference/androidx/media3/common/util/RepeatModeUtil.RepeatToggleModes`. |

| Returns |
|---|---|
| `boolean` | `true` if enabled. |