Способ случайной навигации к указанному экрану c без размонтирования, которое создается (толкается) несколько раз - PullRequest
0 голосов
/ 08 января 2020

Мне нужно знать, способен ли он добиться нужного мне поведения, используя реактив-родной.

Я пытаюсь найти способ перехода к указанному c экрану, который создается несколько раз из одного статически определенный экран. Первые несколько экранов создаются следующим образом:

   this.props.navigation.push('tabScreen') // option 1

   this.props.navigation.navigate({routeName: 'tabScreen', params: {}, key: uuid()}) // option 2

Я могу успешно создать несколько одинаковых экранов, используя stackNavigator, но проблема в том, что мне нужно иметь возможность перемещаться или переходить (не просто возвращаясь к предыдущий экран) на любой из созданных экранов без необходимости размонтировать созданные экраны.

, например, если у меня есть Экран 1, Экран 2, Экран 3, Экран 4, Экран 5, я должен иметь возможность перейти или выполните навигацию по

Screen 1 -> Screen 4
Screen 4 -> Screen 2
Screen 2 -> Screen 5

и т. д. без необходимости размонтировать экраны при навигации (точное поведение функции вкладок в мобильных браузерах).

Навигатор стека React-naivgation использует стек, поэтому из что я понимаю, это всплывает все экраны перед переходом к экрану и, следовательно, размонтирует экран.

Достижимо ли такое поведение в библиотеках навигации вact-native?

Если нет, то где и как я должен искать решение проблемы?

Спасибо

1 Ответ

1 голос
/ 08 января 2020

Вы можете использовать ViewPager , чтобы добиться такого поведения для этого: Plase см. ViewPager, например,

Для ваших вкладок, вы должны создать массив Вкладки и на этой основе вы можете управлять своими вкладками как представлениями внутри пейджерного представления, используя итерацию или любой другой механизм.

Для динамического добавления c вы можете добавлять новые вкладки в массив и повторно визуализировать компонент view-pager.

Для навигации вы можете использовать другую обработку событий Методы API, такие как onPageScrollStateChanged, onPageScroll для управления переключением вкладок и другие вещи.

Надеюсь, это ответит на ваши вопросы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...