Usage

Give a tab a title and platform icon

This type is used by Route

tsx
import { Route, Router, Tab, Tabs, Text } from 'kuito';

function Discover() {
  return <Text padding={16}>Discover</Text>;
}

function Library() {
  return <Text padding={16}>Library</Text>;
}

export default function App() {
  return (
    <Router>
      <Tabs>
        <Tab name="discover" title="Discover" icon={{ ios: 'safari', android: 'explore' }}>
          <Route name="index" path="/" screen={Discover} title="Discover" />
        </Tab>
        <Tab
          name="library"
          title="Library"
          icon={{ ios: 'books.vertical', android: 'library_music' }}
        >
          <Route name="library" path="/library" screen={Library} title="Library" />
        </Tab>
      </Tabs>
    </Router>
  );
}

Type declaration

ts
export type SystemBarsProps = {
  /** The status bar's content color, visibility and, on Android, color. */
  statusBar?: StatusBarOptions;
  /** The root view's color, seen behind the app's views. */
  backgroundColor?: string;
  /** Android: drawn behind the navigation bar. */
  navigationBarColor?: string;
  /** Android: light buttons for a dark navigation bar, dark buttons for a light one. */
  navigationBarButtonStyle?: NavigationBarButtonStyle;
  /** Android: hides the navigation bar; a swipe from the edge shows it for a moment. */
  navigationBarHidden?: boolean;
  /**
   * Full screen: hides the status bar, the navigation bar and the home
   * indicator, and on iOS edge swipes reach the app first. The entry's own
   * props, and later entries, win over what it hides.
   */
  immersive?: boolean;
  /** iOS: lets the home indicator fade out while the user doesn't touch the screen. */
  homeIndicatorAutoHidden?: boolean;
};

Members 7

NameTypeRequiredDescription
statusBarStatusBarOptionsNoThe status bar's content color, visibility and, on Android, color.
backgroundColorstringNoThe root view's color, seen behind the app's views.
navigationBarColorstringNoAndroid: drawn behind the navigation bar.
navigationBarButtonStyleNavigationBarButtonStyleNoAndroid: light buttons for a dark navigation bar, dark buttons for a light one.
navigationBarHiddenbooleanNoAndroid: hides the navigation bar; a swipe from the edge shows it for a moment.
immersivebooleanNoFull screen: hides the status bar, the navigation bar and the home indicator, and on iOS edge swipes reach the app first. The entry's own props, and later entries, win over what it hides.
homeIndicatorAutoHiddenbooleanNoiOS: lets the home indicator fade out while the user doesn't touch the screen.
statusBar — nested fields

statusBar fields

NameTypeRequiredDescription
contentStatusBarContentNoThe color of the status bar's text and icons.
hiddenbooleanNo—
animatedbooleanNoWhether changes to content, hidden and backgroundColor animate.
transitionStatusBarTransitionNoiOS: how showing and hiding animates, when animated.
backgroundColorstringNoAndroid: drawn behind the status bar; a hex color.
translucentbooleanNoAndroid: false lays the app out below the status bar instead of under it.
Generated from the public TypeScript declarations: signatures, props and defaults come from the checked source, descriptions from its JSDoc. No defaults are invented.