Удалить панель навигации из React-Native-Navigation v2? - PullRequest
0 голосов
/ 28 ноября 2018

Как отключить панель навигации для определенного экрана в React-Nativa-Navigation V2?

Ответы [ 3 ]

0 голосов
/ 29 ноября 2018

Для определенного компонента, не отображающего верхнюю панель, это можно сделать, поставив

topBar: {  visible: false }

в options из component, например,

Navigation.setRoot({
      root: {
        stack: {
          id: "App",
          children: [
            {
              component: {
                name: "rci.Login",
                options: {
                  topBar: {
                    visible: false
                  }
                }
              }
            }
          ]
        }
      }
    });

А также, если это необходимочтобы быть установленным на уровне стека, чтобы ни один экран в стеке не отображал верхнюю панель, мы можем сделать это, установив

 options: {
    topBar: {
      visible: false
    }
  },

внутри стека.Весь код выглядит как

Navigation.setRoot({
root: {
 stack: {
  options: {
    topBar: {
      visible: false
    }
  },
  children: [
    {
      component: {
        name: 'navigation.playground.TextScreen',
        passProps: {
          text: 'This is tab 1',
          myFunction: () => 'Hello from a function!',
        }
      }
    },
    {
      component: {
        name: 'navigation.playground.TextScreen',
        passProps: {
          text: 'This is tab 2',
        }
      }
    }
   ]
  }
 }
});
0 голосов
/ 03 декабря 2018

Лучшим вариантом будет установка статических параметров внутри компонента:

export default class YourComponent extends Component {
  static get options() {
    return {
      topBar: {
        visible: false,
        animate: false
      }
    };
  }
}

Обратите внимание, что вы можете переключать анимацию изменения видимости topBar.

0 голосов
/ 28 ноября 2018

Если вы используете StackNavigator, вам нужно установить header на null на данном экране:

class HomeScreen extends React.Component {
  static navigationOptions = {
    header: null,
  };

  ...
}

export default createStackNavigator({
  Home: HomeScreen
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...