Реагировать Навигация скрыть / показать панель навигации - PullRequest
0 голосов
/ 16 февраля 2020

У меня проблема с скрытием или отображением панели навигации в ReactNavigation 5.x.

Например, если у меня есть стек навигации с ScreenA, ScreenB & Screen C. ScreenA не должен показывать панель навигации, но при переходе к ScreenB или Screen C панель должна быть видна. При подключении к ScreenA панель больше не должна быть там. Я использовал следующий код, но это делает панель скрытой всегда. Это должно быть достигнуто как в iOS, так и в Android.

class App extends Component {
  render() {
    return(
      <NavigationContainer>
        <Stack.Navigator screenOptions={{headerShown: false}}>
          <Stack.Screen
            name="Login"
            component={LoginScreen}/>
          <Stack.Screen
            title='Parent Info'
            name='ParentInfo'
            component={ParentInfoScreen}
          />
        </Stack.Navigator>
      </NavigationContainer>
    )}
}

1 Ответ

1 голос
/ 16 февраля 2020

Каждый экран также имеет опцию опций, поэтому вместо использования screenOptions в stack.navigator используйте опции для stack.screen следующим образом:

<Stack.Navigator>
  <Stack.Screen
    options={{headerShown: false}}
    name="Login"
    component={LoginScreen}
  />
  <Stack.Screen
    title="Parent Info"
    name="ParentInfo"
    component={ParentInfoScreen}
  />
</Stack.Navigator>

Затем вы можете указать с помощью экрана

...