反应导航v2滑动

问题描述 投票:0回答:1

由于我在堆栈导航器中更新以反应导航v2,我可以在选项卡之间滑动,现在我不知道如何解决它,因为gesturesEnabled不再适用于我。

const HomeStack = createStackNavigator({
    Home:HomeScreen,
    Read:Read
    },
    {
        headerMode:'none'
    }
);

const Tabs = createMaterialTopTabNavigator({
        Home:{
            screen: HomeStack,    
            navigationOptions: {
                tabBarLabel:'Home',
                tabBarIcon: () => <Image source ={require('../assets/icons/tabHome.png')} style={{width: 32,height: 32}}></Image>
              }
        },
    {
        initialRoutName: 'Home',
        swipeEnabled: true
    });
export const Root = createStackNavigator ({
    Tabs: {
        screen: Tabs
        }
    },
    {
        navigationOptions:{
            header: <Header/>
        }
    }

);

HomeStack.navigationOptions = ({ navigation }) => {
    let tabBarVisible = true;
    if (navigation.state.index > 0) {
      tabBarVisible = false;
    }
    return {
      tabBarVisible
    };
};
class MainScreen extends Component {
    render() {
        return <Root />
    }
}

所以我真正需要的是当我在Read stack中时禁用选项卡之间的滑动。另外,您可以看到root选项有一个固定的标题。当我在root里面时,如何隐藏标题?因为标题:'none'不会覆盖root选项。谢谢。

javascript react-native navigation react-navigation
1个回答
0
投票

您想在标签导航器配置中将swipeEnabled设置为false。这在以下文档中有记录:https://reactnavigation.org/docs/en/material-top-tab-navigator.html

© www.soinside.com 2019 - 2024. All rights reserved.