React-navigation:如何添加未在TabNavigator中显示的导航?
问题描述:
我开始使用反应导航的世博会。
即时通讯使用默认的TabNavigation应用程序构建。
默认情况下,它具有加载MainTabNavigatorReact-navigation:如何添加未在TabNavigator中显示的导航?
const RootStackNavigator = StackNavigator(
{
Main: {
screen: MainTabNavigator,
},
},
{
navigationOptions:() => ({
headerTitleStyle: {
fontWeight: 'normal',
},
}),
}
);
的MainTabNavigator是TabNavigator实例RootStackNavigator。
我创建了一个“ListItemScreen”屏幕并将其添加到TabNavigator中。
在这个屏幕上,我想要一个按钮,用于添加项目的窗体转到另一个屏幕“FormScreen”。
如何在不将其添加到TabNavigator的情况下创建“FormScreen”?
我应该创建一个StackRouter吗?如果是这样,我如何构建文件?
我已经多次阅读文档,但没有得到它。
答
您不必将FormScreen
添加到TabNavigator
,而是添加到StackNavigator
。
const RootStackNavigator = StackNavigator(
{
FormScreen: {
screen: FormScreen,
},
/* ... other routes ... */
}
}
左右的时间内标签的Button
可以直接调用navigate()
:
<Button title="Go FormScreen" onPress={() => this.props.navigation.navigate('FormScreen')} />
官方文件Nesting a Navigator in a Screen给出了一个很好的例子这一点。
谢谢。我完全忽略了这一部分。我认为“嵌套导航”是我不需要的更先进的东西。 –