我使用官方react-navigation来处理我的导航。我有一个主要的TabNavigator的与两个选项卡(称为HitchhikingMapNavigator
及以下SettingsNavigator
)整个应用程序,并且每个标签都有一个嵌套StackNavigator:React-Navigation:无法隐藏标头嵌套导航器
const HitchhikingMapNavigator = StackNavigator({
hitchhikingMap: { screen: HitchhikingMapViewContainer },
spotDetails: { screen: SpotDetailsViewContainer }
}, {
navigationOptions: {
header: {
visible: false
}
}
});
const SettingsNavigator = StackNavigator({
// some other routes
});
export default AppNavigator = TabNavigator({
hitchhikingMap: { screen: HitchhikingMapNavigator },
settings: { screen: SettingsNavigator }
}, {
navigationOptions: {
header: {
visible: false,
},
},
});
正如你所看到的,我把这些标头的visilibility假无处不在,即使在我HitchhikingMapViewContainer
的观点:
class HitchhikingMapView extends React.Component {
static navigationOptions = {
title: 'Map',
header: {
visible: false,
},
//...other options
}
然而,标题栏仍是可见:
如果我不嵌套导航器(即如果我把这个代码,跳过嵌套的一个):
export default AppNavigator = TabNavigator({
hitchhikingMap: { screen: HitchhikingMapViewContainer },
settings: { screen: SettingsNavigator }
});
然后头正确隐藏。
所以结论:当我有两个嵌套的导航器时,我不能使标题不可见。有任何想法吗?
至于React Navigation 1.0.0-beta.11 header:{visible:false}不起作用。改用header:null。 –