Вы должны полностью изучить эту ссылку .Еще одна важная тема: navigationOptions
относится к каждому экрану в стеке.например:
const App = createMaterialTopTabNavigator({
TabScreen: {
screen: TabScreen,
navigationOptions: {
headerStyle: {
backgroundColor: '#633689',
},
headerTintColor: '#FFFFFF',
title: 'TabExample',
},
},
});
, поэтому, если вы хотите установить стиль для верхней панели вкладок, вы должны использовать свойство defaultNavigationOptions
, например:
const DashboardTabNavigator = createMaterialTopTabNavigator(
{
Daily,
Monthly,
Range
},
{
defaultNavigationOptions: ({ navigation }) => {
return {
tabBarOptions:{
style: {
backgroundColor: 'white',
elevation: 0, // remove shadow on Android
shadowOpacity: 0, // remove shadow on iOS,
borderWidth:1,
borderColor:'#ccc'
}
},
};
}
}
)
Общий доступНавигация по экранам
Часто требуется настроить заголовок аналогичным образом на многих экранах.Например, цвет марки вашей компании может быть красным, поэтому вы хотите, чтобы цвет фона заголовка был красным, а цвет оттенка - белым.Удобно, что это цвета, которые мы используем в нашем рабочем примере, и вы заметите, что при переходе к DetailsScreen
цвета возвращаются к значениям по умолчанию.Не было бы ужасно , если бы нам пришлось скопировать свойства стиля заголовка navigationOptions
из HomeScreen
в DetailsScreen
, и для каждого компонента экрана, который мы используем в нашем приложении?К счастью, у нас нет.Вместо этого мы можем переместить конфигурацию в навигатор стека под свойством defaultNavigationOptions .