【发布时间】:2017-02-21 00:50:10
【问题描述】:
我注意到 StackNavigation 中的视图显示标题标题,但如果我在 TabNavigation 中设置相同的屏幕,它不会显示标题。如果我将 StackNavigation 包裹在每个选项卡周围,或者将 TabNavigation 嵌套在 StackNavigation 中,它只会显示标题。
为什么 TabNavigation 中的屏幕不显示标题 - 这是预期的行为吗?如果是这样,是在每个选项卡中都有一个 StackNavigation,还是在 TabNavigation 周围有一个大的 StackNavigation?
//标签导航在每个屏幕中不显示标题
const TabsNavigator = TabNavigator({
Home: {
screen:HomeScreen,
},
Profile: {
screen: ProfileScreen,
},
}, {
tabBarOptions: {
activeTintColor: '#e91e63',
},
navigationOptions: {
header: {
visible: true,
},
},
});
当我将它包装在 StackNavigator 中时会显示标题
default StackNavigator({
Home: { screen: TabsNavigator },
});
还是这样做更好
export TabsNavigator = TabNavigator({
Home: {
screen:StackNavigator({
Home: { screen: HomeScreen },
}),
},
Profile: {
screen: StackNavigator({Profile: {screen: ProfileScreen}}),
},
}, {
tabBarOptions: {
activeTintColor: '#e91e63',
},
navigationOptions: {
header: {
visible: true,
},
},
});
【问题讨论】:
-
这是预期的行为。如果你想有一个标题,你确实必须在每个选项卡中放置一个 StackNavigator,或者你必须自己创建一个标题。
-
我在这里找到了解决方案 - stackoverflow.com/questions/53915174/… 使用该方法不需要使用 StackNavigator 进行包装
标签: react-native react-navigation