Как я могу получить TabBarIOS, чтобы выскочить на вершину стека навигации с помощью act-native?
У меня есть следующие настройки TabBarIOS.Item:
<TabBarIOS.Item
selected={this.state.selectedTab === 'tab1'}
title='Tab 1'
icon={require('./Components/Icons/IconImages/Tab1Icon.png')}
onPress={() => {
this.setState({
selectedTab: 'tab1'
});
}}>
<MyNavigatorIOS client={this.state.client} initialStep={this.state.initialStep} />
</TabBarIOS.Item>
Я пытаюсь использовать onPress
событие, чтобы стрелять this.props.navigator.popToTop();
согласно этому примеру в реагировать родные документы. Разница, однако, в том, что я хочу TabBarIOS onPress
событие, чтобы стрелять popToTop()
а не ребенок MyNavigatorIOS
составная часть. Как я могу сделать это?
1 ответ
Решение
У меня была та же проблема, что вы можете сделать, это добавить ссылку на ваш вид и навигатор внутри него, вот так:
this.refs.timeline.refs.timelineNavigator.popToTop()
Таким образом, код TabBar выглядит так:
<TabBarIOS.Item
systemIcon="history"
title="Timeline"
badge={this.state.timelineBadge}
selected={this.state.selectedTab === 'timeline'}
onPress={() => {
if (this.state.selectedTab === 'timeline') {
this.refs.timeline.refs.timelineNavigator.popToTop()
} else {
this.setState({ selectedTab: 'timeline' })
}
}}>
<Timeline
ref="timeline"
/>
</TabBarIOS.Item>