2017-02-05 3 views
0

Я не могу найти ничего, что не использует навигационную панель для загрузки новой страницы. Мне просто нужна кнопка, которая загружает новое представление, подобное segue (iOS), и загружает новую активность (Android).Как перейти к внешнему классу без панели навигации?

ответ

0

Его лучше для вас сделать ваш вопрос яснее, хотя я думаю, что знаю, что вы ищете.

Навигация в React-Native предлагает вам переходы и переход активности. Есть много вариантов для вас, но в последнее время вышло React Navigation, что является будущим навигации RN. Поэтому, если вы начинаете все сначала, научитесь использовать его в первую очередь.

Однако React Native Router Flux имеет более широкий фон с множеством PR, поддержка и все, что вы можете думать о навигации, уже были смешаны в нем. До тех пор, пока React Navigation не станет немного созревающим, вы можете легко работать с ним.

Сказав, что, показывая некоторый код, вы можете понять, как работает навигация в RN, помимо навигации по навигационной панели, как вы заявили.

Сначала вы должны определить свое дерево навигации и предоставить уникальные ключи для каждой сцены (Activity, Segue), которую вы имеете. Ключи помогут вам перейти к тем Сцены.

class App extends React.Component { 
    render() { 
    return <Router> 
     <Scene key="root"> 
     <Scene key="login" component={Login} title="Login"/> 
     <Scene key="register" component={Register} title="Register"/> 
     <Scene key="home" component={Home}/> 
     </Scene> 
    </Router> 
    } 
} 

Теперь у нас есть параметры входа, регистрации и дома. Предположим, вы находитесь на экране входа в систему (вы можете просто добавить initial={true} в любую сцену, к которой хотите начать свое приложение), и вы хотите перейти на главный экран. Что вы можете сделать, просто импортировать Действия объект от реагировать-родной-router-flux и перемещаться.

Actions.home() // Notice that home is your Home Scene key. 

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

Actions.pop() 

в вашем, позволяю сказать Touchable, чтобы вернуться в навигационной стеке.

Надеюсь, что этот ответ дает вам начало. Вы можете найти подробную документацию о реакции-native-router-flux here.

+0

Вы сказали, что появится навигационная панель и кнопка назад на вкладке, есть ли способ скрыть их? – james

+0

Да. Добавьте hideNavBar = {true} в соответствующую сцену. – eden