自从更新到当我在堆栈导航器中时对导航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 />
}
}
因此,我真正需要的是在进入“读取”堆栈时禁用选项卡之间的滑动。 您还可以看到root选项具有固定的标头。当我在根目录下时,如何隐藏标题?因为header:'none'不会覆盖root选项。 谢谢。
答案 0 :(得分:0)
您要在标签导航器配置中将scrollViewer.ChangeView(0, scrollViewer.VerticalOffset, (scrollViewer.ZoomFactor + 0.1f));
设置为swipeEnabled
。在此处的文档中对此进行了记录:https://reactnavigation.org/docs/en/material-top-tab-navigator.html