← Back to Material 3 Compose
NavigationRailItem
Overview
Code Examples
Video
Material Design navigation rail item.
A NavigationRailItem represents a destination within a NavigationRail.
Navigation rails provide access to primary destinations in apps when using tablet and desktop screens.
The text label is always shown (if it exists) when selected. Showing text labels if not selected is controlled by alwaysShowLabel.
@param selected whether this item is selected @param onClick called when this item is clicked @param icon icon for this item, typically an Icon @param modifier the Modifier to be applied to this item @param enabled controls the enabled state of this item. When false
, this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services. @param label optional text label for this item @param alwaysShowLabel whether to always show the label for this item. If false, the label will only be shown when this item is selected. @param colors NavigationRailItemColors that will be used to resolve the colors used for this item in different states. See NavigationRailItemDefaults.colors. @param interactionSource the MutableInteractionSource representing the stream of Interactions for this item. You can create and pass in your own remember
ed instance to observe Interactions and customize the appearance / behavior of this item in different states.
Overloads
NavigationRailItem
@Composable
fun NavigationRailItem(
selected: Boolean,
onClick: () -> Unit,
icon: @Composable () -> Unit,
modifier: Modifier = Modifier,
enabled: Boolean = true,
label: @Composable (() -> Unit)? = null,
alwaysShowLabel: Boolean = true,
colors: NavigationRailItemColors = NavigationRailItemDefaults.colors(),
interactionSource: MutableInteractionSource = remember { MutableInteractionSource() },
)
Parameters
Name | Description |
---|---|
selected | whether this item is selected |
onClick | called when this item is clicked |
icon | icon for this item, typically an Icon |
modifier | the Modifier to be applied to this item |
enabled | controls the enabled state of this item. When false , this component will not respond to user input, and it will appear visually disabled and disabled to accessibility services. |
label | optional text label for this item |
alwaysShowLabel | whether to always show the label for this item. If false, the label will only be shown when this item is selected. |
colors | NavigationRailItemColors that will be used to resolve the colors used for this item in different states. See NavigationRailItemDefaults.colors. |
interactionSource | the MutableInteractionSource representing the stream of Interactions for this item. You can create and pass in your own remember ed instance to observe Interactions and customize the appearance / behavior of this item in different states |