---
title: "TabIndicatorScope"
description: "Scope for the composable used to render a Tab indicator, this can be used for more complex
indicators requiring layout information about the tabs like [TabRowDefaults.PrimaryIndicator] and
[TabRowDefaults.SecondaryIndicator]"
type: "interface"
---

<div class='type'>Interface</div>


<a id='references'></a>

<div class='sourceset sourceset-common'>Common</div>



```kotlin
interface TabIndicatorScope
```


Scope for the composable used to render a Tab indicator, this can be used for more complex
indicators requiring layout information about the tabs like `TabRowDefaults.PrimaryIndicator` and
`TabRowDefaults.SecondaryIndicator`


## Functions

```kotlin
fun Modifier.tabIndicatorLayout(
        measure: MeasureScope.(Measurable, Constraints, List<TabPosition>) -> MeasureResult
    ): Modifier
```


A layout modifier that provides tab positions, this can be used to animate and layout a
TabIndicator depending on size, position, and content size of each Tab.


```kotlin
fun Modifier.tabIndicatorOffset(
        selectedTabIndex: Int,
        matchContentSize: Boolean = false,
    ): Modifier
```


A Modifier that follows the default offset and animation

#### Parameters

| | |
| --- | --- |
| selectedTabIndex | the index of the current selected tab |
| matchContentSize | this modifier can also animate the width of the indicator to match the content size of the tab. |




