Reference version

IconButton

用于显示原生 Material3 图标按钮的 Jetpack Compose IconButton 组件。

Android
Bundled version:
~55.0.0-beta.0

For the complete documentation index, see llms.txt. Use this Use this file to discover all available pages.

Expo UI 提供四个图标按钮组件,与官方 Jetpack Compose IconButton API 保持一致:IconButtonFilledIconButtonFilledTonalIconButtonOutlinedIconButton。所有变体共享相同的 props,并接受可组合的子元素作为内容。

安装

Terminal
npx expo install @expo/ui

If you are installing this in an existing React Native app, make sure to install expo in your project.

用法

基本图标按钮

一个没有背景的标准图标按钮,通常用于工具栏操作。

BasicIconButtonExample.tsx
import { Host, IconButton, Icon } from '@expo/ui/jetpack-compose'; export default function BasicIconButtonExample() { return ( <Host matchContents> <IconButton onClick={() => alert('已按下!')}> <Icon source={require('./assets/settings.xml')} size={24} /> </IconButton> </Host> ); }

图标按钮变体

使用不同的图标按钮组件来传达不同程度的强调。

IconButtonVariantsExample.tsx
import { Host, IconButton, FilledIconButton, FilledTonalIconButton, OutlinedIconButton, Icon, Row, } from '@expo/ui/jetpack-compose'; export default function IconButtonVariantsExample() { return ( <Host matchContents> <Row horizontalArrangement={{ spacedBy: 8 }}> <IconButton onClick={() => {}}> <Icon source={require('./assets/star.xml')} size={24} /> </IconButton> <FilledIconButton onClick={() => {}}> <Icon source={require('./assets/star.xml')} size={24} /> </FilledIconButton> <FilledTonalIconButton onClick={() => {}}> <Icon source={require('./assets/star.xml')} size={24} /> </FilledTonalIconButton> <OutlinedIconButton onClick={() => {}}> <Icon source={require('./assets/star.xml')} size={24} /> </OutlinedIconButton> </Row> </Host> ); }

API

import { IconButton, FilledIconButton, FilledTonalIconButton, OutlinedIconButton, } from '@expo/ui/jetpack-compose';

Components

FilledIconButton

Android

Type: React.Element<IconButtonProps>

A filled icon button with a solid background.

FilledTonalIconButton

Android

Type: React.Element<IconButtonProps>

A filled tonal icon button with a muted background.

IconButton

Android

Type: React.Element<IconButtonProps>

A standard icon button with no background.

IconButtonProps

children

Android
Type: React.ReactNode

Content to display inside the icon button.

colors

Android
Optional • Type: IconButtonColors

Colors for icon button elements.

enabled

Android
Optional • Type: boolean • Default: true

Whether the icon button is enabled for user interaction.

modifiers

Android
Optional • Type: ModifierConfig[]

Modifiers for the component.

onClick

Android
Optional • Type: () => void

Callback that is called when the icon button is clicked.

shape

Android
Optional • Type: ShapeJSXElement

The shape of the icon button.

OutlinedIconButton

Android

Type: React.Element<IconButtonProps>

An outlined icon button with a border and no fill.

Types

IconButtonColors

Android

Colors for icon button elements.

PropertyTypeDescription
containerColor(optional)ColorValue
-
contentColor(optional)ColorValue
-
disabledContainerColor(optional)ColorValue
-
disabledContentColor(optional)ColorValue
-