Как вернуться к первому маршруту после того, как пользователь проведет пальцем по последнему маршруту в React Navigation? - PullRequest
0 голосов
/ 26 марта 2019

Я использую createMaterialTopTabNavigator из react-navigation и создал собственную панель вкладок. То, чего я пытаюсь добиться, это когда пользователь находится на последней вкладке и проводит пальцем вправо, навигатор возвращает его на первую вкладку (в основном создавая цикл).

Это мой навигатор:

const myNavigator = 
    createMaterialTopTabNavigator(NavigatorConfig, {
    tabBarComponent: props => <CustomTabBar {...props} />,
});

и внутри CustomTabBar Я отображаю панель вкладок следующим образом:

<View> {this.props.navigationState.routes.map(this.renderItem)} </View>

И renderItem отображает каждую вкладку:

renderItem = (route, index) => {
  const { navigationState, jumpTo } = this.props;
  const focused = index === navigationState.index;
  const lastTab = index === navigationState.routes.length - 1;

  return (
  <TouchableWithoutFeedback
    key={route.key}
    onPress={() => jumpTo(route.routeName)}>

    ... tabcontent ...

  </TouchableWithoutFeedback>
  );
};
...