react-native - 如何隐藏标签栏导航?
问题描述
如何隐藏标签栏导航?导航后,我可以看到标签栏但不工作但在工作。navigationOptions:{tabBarVisible: false} 在第 5 行不起作用,但在第 22 行,主选项卡工作正常。
const MenStack = createStackNavigator({
menStackNav: { screen: MenTabScreen},
Products: {
screen: ProductsShow,
navigationOptions:{tabBarVisible: false},
},
},{
initialRouteName: 'menStackNav',
headerMode: 'none',
navigationOptions: {
headerVisible: false,
}
});
const HomeScreenTabs = createMaterialTopTabNavigator({
home:{
screen:HomeTabScreen,
},
women: WomenTabScreen,
men: {
screen:MenStack,
navigationOptions:{tabBarVisible: false},
},
},{
tabBarOptions: {
activeTintColor: '#fff',
inactiveTintColor: '#eee',
tabStyle:{backgroundColor:'#0077FF',height:40},
labelStyle: {
fontSize: 14,
fontFamily:'iransans_medium',
},
},
initialRouteName: 'men',
mode: 'modal',
headerMode: 'none',
});
我有 3 个选项卡和一个堆栈导航,用于导航到另一个屏幕以显示产品。当产品可见时,我需要隐藏标签栏。
解决方案
您需要使用 tabBarVisible 将 tabBar 隐藏在 stackPage 中
const MenStack = createStackNavigator({
Home:{screen: MenTabScreen,},
Products:{screen: ProductsShow,}
}, {initialRouteName: 'Home', headerMode: 'none')}
MenStack.navigationOptions = ({navigation}) => {
let tabBarVisible = true;
if(navigation.state.index > 0){
tabBarVisible = false;
}
return {
tabBarVisible,
}
}
const HomeScreenTabs = createBottomTabNavigator({
Home:{screen: HomeTabScreen,},
Women :{screen: WomenTabScreen,},
Men : {screen : MenStack,}
})
export default HomeScreenTabs;
推荐阅读
- domain-driven-design - 添加跨两个聚合的域服务的解决方案中的哪个项目?
- c++ - I/O 中打开(文件)的行为
- javascript - 如何将对象属性放入变量中?
- c# - 使用 ASP.Net Core 进行数据注释本地化
- html - 直接在视图中从 Laravel 的元属性中删除 HTML 标签
- javascript - 自定义 Babel 插件 - 将 stringLiteral 值更改为实际的 Javascript 代码
- javascript - scrollIntoView 没有滚动到请求带有提交按钮 onClick
- nginx - 在 Engintron 问题上反向代理到端口 8069,而它适用于标准 NGINX 设置
- node.js - 通过Nodejs中的查询字符串获取用户
- matlab - 如何在matlab向量上制作多个if?