Top Tab Navigator
Last updated
Last updated
A top tab navigator is a row of tabs placed at the top of the screen, allowing users to switch between different screens with a simple tap.
By incorporating a top tab navigator, you:
Enhance discoverability. Users can quickly identify and access different sections of your app, which ensures that they can find what they're looking for effortlessly.
Enable seamless switching between sections. This fluid user experience keeps users engaged and satisfied with your app.
Have the freedom to customize the appearance of each tab to match your app's branding and unique requirements.
In this tutorial, we'll explore the benefits of using a top or bottom tab navigator and provide step-by-step instructions on implementation.
To add a navigator to your app:
Click the dropdown arrow at the top of your component tree.
Hover over Add Navigator.
Select the navigator you want to add.
By default, the navigator includes four tabs. You’ll need to identify the sections or views you want to include in your app and add or remove tabs accordingly.
To add a tab to your navigator, create a new screen and, within the component tree, drag it to nest within the tab navigator component.
To remove a tab, delete its corresponding screen in the component tree.
Click on the tab navigator in the component tree to access the navigator’s properties panel. Here, on the right side, you can customize the properties specific to the navigator.
Property | Value | Description |
---|---|---|
Swipe Enabled | True/False | Allow the user to swipe between screens. |
Lazy | True/False | If true, the content of each tab screen only loads when the user navigates to that specific tab. This can help optimize performance and reduce the initial loading time of the app. If false, the content of all tab screens loads when the navigator is first opened. |
Background Color | Color | Set the navigator's background color. |
Tab Indicator Color | Color | Set the color of the line that signals the active tab. |
Active Tint Color | Color | Set the text color for the tab the user is currently engaging with. |
Inactive Tint Color | Color | Set the text color for the tabs the user is not engaged with. |
Show Label Icon | Dropdown menu | Select whether to show tab labels, icons, or both in the navigator. |
Property | Value | Description |
---|---|---|
Uppercase Label | True/False | If true, set all tab labels to uppercase (e.g. CONTACT). If false, capitalization of tab labels reflects what is input in the screen's Tab Navigation Options section of its properties panel. |
Press Color (Android only) | Color | Set the color that displays when a user presses on a tab. This provides a visual cue to the user that the app has recognized their touch. |
Press Opacity (iOS only) | 0 to 100 | 0 represents complete transparency (the element is not visible at all). 100 represents full opacity (the element is completely visible with no transparency). |
Tab Indicator Height | Number | Define the height of the line that signals the active tab. |
To access the properties panel for a specific screen or tab, click the screen name in the component tree.
Property | Value | Description |
---|---|---|
Scrollable | True/False | Allow the user to scroll on this screen. |
Background Color | Color | Set the screen's background color. |
Background Image | Image | Upload an image to be displayed in the screen's background. Accepted formats: PNG, JPG, GIF, SVG, etc., or a URL that ends in a file extension (e.g. https://thunkable.com/static/media/logo.ba96eb83.png) |
Background Image Resize Mode | cover, contain, stretch, repeat, or center | Set how the background image is shown if the image file and the screen have different dimensions/aspect ratios. See Picture Resize Mode below. |
Orientation (iOS and Android only) | portrait, landscape, or auto | Define the screen's orientation. |
Center: The image is displayed at its original size within the container, and it is centered both vertically and horizontally. This means that if the image is larger than the container, parts of it may extend beyond the container's edges.
Cover: The image is resized to completely cover the container while maintaining its aspect ratio. This mode ensures that the entire container is filled with the image, and any excess image parts are cropped if necessary. This can result in parts of the image being clipped.
Contain: The image is resized to fit entirely within the container while maintaining its aspect ratio. This mode ensures that the entire image is visible within the container, and it may result in empty space around the image if the container's aspect ratio differs from the image's aspect ratio.
Repeat: The image is tiled or repeated to fill the entire container, both horizontally and vertically. This mode is often used for creating patterns or backgrounds that seamlessly repeat across the container.
Stretch: The image is resized to fully cover the container without maintaining its original aspect ratio. This can distort the image and may result in an unnatural appearance, so it's generally not recommended for most scenarios.
Screens within a navigator have an additional section in the screen's properties panel for navigation options. This is where you define the screen's label that displays in the navigator.
Property | Value | Description |
---|---|---|
Tab Bar Label | Text | Set the text of this screen's tab in the tab navigator. |
Active Tab Icon | Image | Set the icon displayed in the tab navigator when this screen is active. Accepted formats: PNG, JPG, GIF, SVG, etc., or a URL that ends in a file extension (e.g. https://thunkable.com/static/media/logo.ba96eb83.png) |
Inactive Tab Icon | Image | Set the icon displayed in the tab navigator when this screen is inactive. Accepted formats: PNG, JPG, GIF, SVG, etc., or a URL that ends in a file extension (e.g. https://thunkable.com/static/media/logo.ba96eb83.png) |
Tab Bar Visible | True/False | Set whether the tab navigator is visible when this screen is open. |
The status bar is located at the top of a phone's screen. The status bar displays information regarding signal strength, battery, and whether or not things like the alarm or wi-fi are enabled.
Property | Value | Description |
---|---|---|
Visibility | True/False | Set whether or not you want the status bar visible on the screen. |
Style | default, light-content, or dark-content | Set whether the the app's appearance should be light or dark, or follow the device's settings (default). Default is recommended. |
Color (Android only) | Color | Set the color of the status bar. |
Translucent (Android only) | True/False | Set the translucency of the status bar. When set to true, the app's content behind the status bar is partially visible, giving the impression that the status bar is overlaid on top of the underlying screen content rather than fully opaque. |