# Common Options ## navBarTextColor Title text color ```js topBar: { title: { color: 'red' } } ``` ## navBarTextFontSize Title font size ```js topBar: { title: { fontSize: 18 } } ``` ## navBarTextFontFamily Title font ```js topBar: { title: { fontFamily: 'Helvetica' } } ``` ## navBarBackgroundColor TopBar background color ```js topBar: { background: { color: 'red' } } ``` ## navBarCustomView Use a react view as the TopBar's background or use a React view instead of the textual title. ```js topBar: { background: { component: { name: 'example.CustomTopBarBackground' } }, title: { component: { name: 'example.CustomTopBarTitle' } } } ``` ## navBarClipToBounds Restrict the navbar background color to the navbar, and do not flow behind the status bar. ```js topBar: { background: { component: { name: 'example.CustomTopBarBackground', clipToBounds: true } }, } ``` ## navBarComponentAlignment Align the React view used as the title ```js topBar: { title: { component: { name: 'example.CustomTopBarTitle', alignment: 'center' | 'fill' } } } ``` ## navBarCustomViewInitialProps Initial props passed to the React component ```js topBar: { background: { component: { name: 'example.CustomTopBarBackground', passProps: {} } }, title: { component: { name: 'example.CustomTopBarTitle', passProps: {} } } } ``` ## navBarButtonColor TopBar button color ```js topBar: { rightButtons: [ { color: 'red' } ], leftButtons: [ { color: 'red' } ], backButton: { color: 'red' } } ``` ## navBarHidden TopBar visibility. When setting `visible: false`, you probably want to set `drawBehind: true` as well. Use `animate: false` to toggle visibility without animation. ```js topBar: { visible: false } ``` ## navBarTransparent Transparent TopBar. Set `drawBehind: true` to draw the screen behind the transparent TopBar. ```js topBar: { background: { color: 'transparent' } } ``` ## drawUnderNavBar Draw the screen behind the TopBar, Useful when the TopBar is toggled or transparent ```js topBar: { drawBehind: true } ``` ## drawUnderTabBar Draw the screen behind the BottomTabs, Useful when toggling BottomTabs or when the BottomTabs are translucent. ```js bottomTabs: { drawBehind: true } ``` ## tabBarHidden BottomTabs visibility. ```js bottomTabs: { visible: false } ``` The BottomTab's visibility can be toggled only on **Android** using `mergeOptions`: ```js Navigation.mergeOptions(this.props.componentId, { bottomTabs: { visible: false } }); ``` On **iOS**, BottomTab visibility can be changed only when pushing screens. This means that if you'd like to hide BottomTabs when pushing a screen, You'll need to set the property to `false` in the options passed to the `push` command or via the `static options(passProps) {}` api. ## statusBarHidden StatusBar visibility. For android, also set `drawBehind: true`. ```js statusBar: { visible: false } ``` ## statusBarTextColorScheme Theme of text and icons displayed in the StatusBar ```js statusBar: { style: 'light' | 'dark' } ``` ## navBarSubtitleColor Subtitle color ```js topBar: { subtitle: { color: 'red' } } ``` ## navBarSubtitleFontFamily Subtitle font ```js topBar: { subtitle: { fontFamily: 'Helvetica' } } ``` ## navBarSubtitleFontSize Subtitle font size ```js topBar: { subtitle: { fontSize: 14 } } ``` ## screenBackgroundColor Screen color, visible before the actual React view is rendered ```js layout: { backgroundColor: 'red' } ``` ## orientation ```js layout: { orientation: ['portrait', 'landscape'] // An array of supported orientations } ``` ## disabledButtonColor Button color when `enabled: false` is used ```js topBar: { rightButtons: [ { disabledColor: 'grey' } ] } ``` ## navBarButtonFontSize Button font size ```js topBar: { rightButtons: [ { fontSize: 13 } ], leftButtons: [ { fontSize: 13 } ] } ``` ## navBarLeftButtonFontSize Left button font size ```js { topBar: { leftButtons: [ { fontSize: 13 } ] } } ``` ## navBarLeftButtonColor Left button color ```js { topBar: { leftButtons: [ { color: 'red' } ] } } ``` ## navBarLeftButtonFontWeight Left button font weight ```js { topBar: { leftButtons: [ { weight: '300' } ] } } ``` ## navBarRightButtonFontSize Right button font size ```js topBar: { leftButtons: [ { fontSize: 13 } ] } ``` ## navBarRightButtonColor Right button color ```js topBar: { rightButtons: [ { color: 'red' } ] } ``` ## navBarRightButtonFontWeight Right button font weight ```js topBar: { rightButtons: [ { weight: '400' } ] } ``` ## modalPresentationStyle Controls the behavior of screens displayed modally. ### Options supported on iOS * `overCurrentContext` - Content is displayed over the previous screen. Useful for **transparent modals** * `formSheet` - Content is centered in the screen * `pageSheet` -Content partially covers the underlying content * `overFullScreen` - Content covers the screen, without detaching previous content. * `fullScreen` - Content covers the screen, previous content is detached. * `popover` - Content is displayed in a popover view. More information on the different styles for iOS can be found on https://developer.apple.com/documentation/uikit/uimodalpresentationstyle ### Options supported on Android * `overCurrentContext` - Content is displayed over the previous screen. Useful for **transparent modals** * `none` - Previous content is detached when the Modal's show animation ends ```js { modalPresentationStyle: 'overCurrentContext' } ``` ## navBarButtonFontFamily Button font family ```js topBar: { rightButtons: [ { fontFamily: 'Helvetica' } ] } ``` # iOS only ## navBarHideOnScroll Hide TopBar when list is scrolled ```js topBar: { hideOnScroll: true } ``` ## navBarTranslucent Translucent TopBar, Setting `drawBehind: true` is required for this property to work as expected. ```js topBar: { drawBehind: true, background: { translucent: true } } ``` ## navBarNoBorder Remove TopBar border (hair line) ```js topBar: { noBorder: true } ``` ## navBarBlur Blur the area behind the TopBar, Setting `drawBehind: true` and topBar background `transparent: true` is required for this property to work as expected. ```js topBar: { drawBehind: true, background: { blur: true, transparent: true } } ``` ## rootBackgroundImageName * iOS: name of image in Images.xcassets * Android: name of drawable ```js { rootBackgroundImage: require('rootBackground.png') } ``` ## screenBackgroundImageName name of image in Images.xcassets ```js { backgroundImage: require('background.png') } ``` ## statusBarHideWithNavBar Hide the StatusBar if the TopBar is also hidden ```js statusBar: { hideWithTopBar: true } ``` ## statusBarBlur Blur the area behind the StatusBar ```js statusBar: { blur: true } ``` ## disabledBackGesture Disable the back (swipe) gesture used to pop screens ```js { popGesture: false } ``` ## largeTitle Use iOS 11 large title ```js topBar: { largeTitle: { visible: true, fontSize: 30, color: 'red', fontFamily: 'Helvetica' } } ``` # Android Options ## topBarElevationShadowEnabled TopBar elevation in dp. Set this value to `0` to disable the TopBar's shadow. ```js topBar: { elevation: 0 } ``` ## navBarTitleTextCentered Title alignment ```js topBar: { title: { alignment: 'center'|'fill' } } ``` ## statusBarColor StatusBar color ```js statusBar: { backgroundColor: 'red' } ``` ## navigationBarColor NavigationBar color ```js navigationBar: { backgroundColor: 'red' } ``` ## drawUnderStatusBar Draw content behind the StatusBar ```js statusBar: { drawBehind: true } ``` ## navBarHeight TopBar height in dp ```js topBar: { height: 70 } ``` ## navBarTopPadding Content top margin ```js layout: { topMargin: 26 } ``` ## topTabsHeight TopTabs height ```js topTabs: { height: 70 } ``` ## topBarBorderColor TopBar border color ```js topBar: { borderColor: 'red' } ``` ## topBarBorderWidth TopBar border height ```js topBar: { borderHeight: 1.3 } ``` # Unsupported options * disabledSimultaneousGesture * statusBarTextColorSchemeSingleScreen * navBarButtonFontWeight * topBarShadowColor * topBarShadowOpacity * topBarShadowOffset * topBarShadowRadius * preferredContentSize * navBarSubTitleTextCentered * collapsingToolBarImage * collapsingToolBarCollapsedColor * navBarTextFontBold