我有一个stackNavigator,其中在底部导航中包含一些单个屏幕和底部导航,我还希望在底部的每个单个屏幕中更改其他屏幕,以更改父标题堆栈屏幕,但是它不起作用,我不知道为什么?
这是我的代码
App.js ~ Parent
const AppNavigator = createStackNavigator(
{
Register: {
screen: Register,
navigationOptions: () => ({
drawerLockMode: 'locked-closed',
}),
},
TabHome: {
screen: TabHome, // bottom navigator
},
},
{
initialRouteName: 'TabHome',
title: 'Audix', this title still in every other screens
}
);
TabNavigation.js
const TabHome = createBottomTabNavigator({
Home: {
screen: Home,
navigationOptions: {
tabBarLabel: 'Home',
},
},
Library: {
screen: YourLibrary,
navigationOptions: {
tabBarLabel: 'library',
// title: 'library', not work here !
// headerStyle: {
// backgroundColor: '#00f',
// },
},
},
});
我想您可以根据需要在每个屏幕上定义它。
class Library extends React.Component {
static navigationOptions = {
title: 'Home',
};
...
}
并且如果您想为其他屏幕添加默认标题
const AppNavigator = createStackNavigator(
...,
{
defaultNavigationOptions: {
title: 'DEFAULT_TITLE'
}
}
)