By providing access to hover, pressed, and focus events, Pressable serves as a more flexible alternative to buttons at a lower level of abstraction. It is a useful primitive for advanced customization needs.
API Reference
This is an illustration of a Themed Pressable component with default configuration.
onPress={() => console.log("Hello")}
sx={{ ":hover": { bg: "$primary400" } }}
<Text color="white">Press me</Text>

API Reference


To use this component in your project, include the following import statement in your file.
import { Pressable } from '@gluestack-ui/themed';


The structure provided below can help you identify and understand a Pressable component's various parts.
export default () => <Pressable />

Component Props

This section provides a comprehensive reference list for the component props, detailing descriptions, properties, types, and default behavior for easy project integration.


It inherits all the properties of React Native's Pressable component.


The Examples section provides visual representations of the different variants of the component, allowing you to quickly and easily determine which one best fits your needs. Simply copy the code and integrate it into your project.

Pressable child elements according to its states

You can change the child elements according to the states of Pressable component.
<Pressable p="$16" bg="$primary500" sx={{ ":hover": { bg: "$primary400" } }}>
{({ pressed }) => <Text color={pressed ? "pink" : "yellow"}>PRESSABLE</Text>}
Similarly, you can change the child elements according to other states of Pressable component and i.e. focus , hover , pressed , disabled and focusVisible.


All the components in gluestack-ui are unstyled by default. To customize your UI using the extendedTheme, please refer to this link. The import names of components serve as keys to customize each component.
Edit this page on GitHub