我完全不知道要实现如下所示的东西,这工作正常但无法隐藏 EditPage 和 PageTwo 的标签栏
- 登录
- 报名
- 标签导航器(TabNavigator)
- 第一个选项卡
- 第二个选项卡(堆栈导航器)
- 列表页
- 编辑页面
- 第三个选项卡(堆栈导航器)
- 第一页
- 第二页
- 设置
下面是我的配置。
import { createStackNavigator, createSwitchNavigator, createBottomTabNavigator } from 'react-navigation';
//Other required imports here
const SignedOut = createStackNavigator({
Signup: { screen : Signup},
Login: { screen : Login}
});
const SignedIn = createBottomTabNavigator({
Dashboard: {
screen: Dashboard
},
Rewards: {
screen: createStackNavigator({
Rewards:{
screen: Rewards,
navigationOptions:{
header:null
}
},
AddReward:{
screen: AddReward,
navigationOptions:{
header:null,
tabBarVisible: false
}
}
})
},
Activities: {
screen: createStackNavigator({
Rewards:{
screen: Activities,
navigationOptions:{
header:null
}
},
NewActivity:{
screen: NewActivity,
navigationOptions:{
header:null,
tabBarVisible: false
}
}
})
},
Settings: {
screen: Settings
}
},{
tabBarComponent: ({navigation}) => <FooterComponent navigation={navigation} />,
tabBarPosition: 'bottom',
animationEnabled: false,
swipeEnabled: false
});
export const createRootNavigator = (signedIn) => {
return createSwitchNavigator(
{
SignedIn: {
screen: SignedIn
},
SignedOut: {
screen: SignedOut
}
},
{
initialRouteName: (signedIn) ? "SignedIn" :"SignedOut",
headerMode: 'none'
}
);
};
问题
- 我无法隐藏 AddReward 和 NewActivity 的标签栏
tabBarVisible: false
不适用于 TabNavigator 内的 StackNavigator
谢谢
原文由 Javascript Hupp Technologies 发布,翻译遵循 CC BY-SA 4.0 许可协议
您可以将一个 StackNavigator 与所有堆栈一起使用,并将 TabNavigator 设置为默认路由: