Skip to main content
161

Search Lumen

Find components, APIs, guides, and recipes.

GitHub
React Native docs
ActionsReact Native

Icon button

Trigger a native action with a required accessible label and platform icon.

Public APILumenIconButtonReact Native

Native example

Use Icon button

Use for compact, familiar actions. Prefer a text button when the icon alone would make the action difficult to understand.

View verified React Native runtime capture
Icon button rendered in the Expo web renderer Lumen playground
Verified runtime captureExpo web renderer
tsx
<LumenIconButton
  name="settings"
  label="Settings"
  onPress={openSettings}
/>

React Native icon catalog

Choose an icon name

Search the visual catalogs, copy the displayed Lumen name, then use the React Native spelling below. The package includes both catalogs without another native dependency.

Brand icons

Use the platform form brand:github. Brand marks retain their Font Awesome attribution and may be protected trademarks.

Browse all brand icon names

Platform or product artwork

Use icon={ProductMark} when the operating system or your product owns the symbol instead of Lumen.

Reference

Public API

The primary shared and platform-specific options exposed by LumenIconButton.

APIValues or typeDefaultDescription
name or iconLumenIconName or LumenIconGraphicExactly one requiredSelects a generated catalog icon or a platform-specific custom graphic.
labelStringRequiredProvides the accessible action name.
onPressCallbackRequiredRuns the action.
intentprimary · secondary · quiet · dangerquietSelects the semantic action treatment.
sizesm · md · lgmdSelects shared icon and control metrics.
disabledBooleanfalseControls native disabled state.

Native behavior

Design and accessibility

When to use it

Use for compact, familiar actions. Prefer a text button when the icon alone would make the action difficult to understand.

Accessibility

The accessible label is required and becomes the native button name. Touch targets remain at least 44 units on mobile.

Shared component

Available on other platforms

Apple / SwiftUIAndroid / Compose
React Native docsNative primitives