androidx.compose.material.icons

This is the entry point for using Material Icons in Compose, designed to provide icons that match those described at fonts.google.com/icons.

Icons image

In this page, you'll find documentation for types, properties, and functions available in the androidx.compose.material.icons package.

The most commonly used set of Material icons are provided by androidx.compose.material:material-icons-core - this library is also provided as an API dependency by androidx.compose.material:material.

A separate library, androidx.compose.material:material-icons-extended, contains the full set of Material icons. Due to the very large size of this library, make sure to use R8/Proguard to strip unused icons if you are including this library as a direct dependency. Alternatively you can make a local copy (by copy and pasting) the icon(s) you wish to keep, or using Android Studio's 'Import vector asset' feature.

Overview

System icons

System icons symbolize common actions, files, devices, and directories.

APIs Description Preview
Icons Icons Icons
Default Icons.Default Default icons Default icon image
Filled Icons.Filled Filled icons Filled icon image
Outlined Icons.Outlined Outlined icons Outlined icon image
Rounded Icons.Rounded Rounded icons Rounded icon image
Two tone Icons.TwoTone Two tone icons Two tone icon image
Sharp Icons.Sharp Sharp icons Sharp icon image

Note: Icons.Default is an alias for Icons.Filled.

APIs Description
Icon androidx.compose.material.Icon Icon
androidx.compose.material3.Icon M3 icon
Icon button androidx.compose.material.IconButton Icon button
androidx.compose.material3.IconButton M3 icon button
Icon toggle button androidx.compose.material.IconToggleButton Icon toggle button
androidx.compose.material3.IconToggleButton M3 icon toggle button

Objects

Icons

Material Design system icons as seen on Google Fonts.

Cmn
Icons.AutoMirrored

Material Design system icons as seen on Google Fonts.

Cmn
Icons.AutoMirrored.Filled

Filled iconsare the default icon theme.

Cmn
Icons.AutoMirrored.Outlined

Outlined icons make use of a thin stroke and empty space inside for a lighter appearance.

Cmn
Icons.AutoMirrored.Rounded

Rounded icons use a corner radius that pairs well with brands that use heavier typography, curved logos, or circular elements to express their style.

Cmn
Icons.AutoMirrored.Sharp

Sharp icons display corners with straight edges, for a crisp style that remains legible even at smaller scales.

Cmn
Icons.AutoMirrored.TwoTone

Two-Tone icons display corners with straight edges, for a crisp style that remains legible even at smaller scales.

Cmn
Icons.Filled

Filled icons (previously the only available theme, also known as the baseline theme) are the default icon theme.

Cmn
Icons.Outlined

Outlined icons make use of a thin stroke and empty space inside for a lighter appearance.

Cmn
Icons.Rounded

Rounded icons use a corner radius that pairs well with brands that use heavier typography, curved logos, or circular elements to express their style.

Cmn
Icons.Sharp

Sharp icons display corners with straight edges, for a crisp style that remains legible even at smaller scales.

Cmn
Icons.TwoTone

Two-Tone icons display corners with straight edges, for a crisp style that remains legible even at smaller scales.

Cmn

Top-level functions summary

inline ImageVector
materialIcon(
    name: String,
    autoMirror: Boolean,
    block: ImageVector.Builder.() -> ImageVector.Builder
)

Utility delegate to construct a Material icon with default size information.

Cmn

Extension functions summary

inline ImageVector.Builder
ImageVector.Builder.materialPath(
    fillAlpha: Float,
    strokeAlpha: Float,
    pathFillType: PathFillType,
    pathBuilder: PathBuilder.() -> Unit
)

Adds a vector path to this icon with Material defaults.

Cmn

Top-level functions

inline fun materialIcon(
    name: String,
    autoMirror: Boolean = false,
    block: ImageVector.Builder.() -> ImageVector.Builder
): ImageVector

Utility delegate to construct a Material icon with default size information. This is used by generated icons, and should not be used manually.

Parameters
name: String

the full name of the generated icon

autoMirror: Boolean = false

determines if the vector asset should automatically be mirrored for right to left locales

block: ImageVector.Builder.() -> ImageVector.Builder

builder lambda to add paths to this vector asset

Extension functions

inline fun ImageVector.Builder.materialPath(
    fillAlpha: Float = 1.0f,
    strokeAlpha: Float = 1.0f,
    pathFillType: PathFillType = DefaultFillType,
    pathBuilder: PathBuilder.() -> Unit
): ImageVector.Builder

Adds a vector path to this icon with Material defaults.

Parameters
fillAlpha: Float = 1.0f

fill alpha for this path

strokeAlpha: Float = 1.0f

stroke alpha for this path

pathFillType: PathFillType = DefaultFillType

PathFillType for this path

pathBuilder: PathBuilder.() -> Unit

builder lambda to add commands to this path