我想将“TabNavigator”,“StackNavigator”与“Header title”和“Tababr:Tab-1&Tab-2”结合起来 .

流程(见代码):

点击“Tab -1 Screen-1” - >在新屏幕中打开tab1Screen1,但我想打开相同的标签, Headers 和 Headers 相同

单击“Tab -2 Screen-1” - >在新屏幕中打开tab2Screen1,但我想在 Headers 和 Headers 的同一选项卡中打开 .

请检查以下代码和附加的屏幕截图 .

import React, { Component } from 'react';
import Tab1 from './Tab1.js'
import Tab2 from './Tab2.js'
import Tab1Screen1 from './Tab1Screen1.js'
import Tab2Screen1 from './Tab2Screen1.js'
import { TabNavigator,StackNavigator } from 'react-navigation'
export const TabStack = TabNavigator({
  Tab1:{screen:Tab1,navigationOptions: { title: 'Tab - 1' }},
  Tab2:{screen: Tab2, navigationOptions: { title: 'Tab - 2' }},
},{
  order: ['Tab1', 'Tab2']
});
export const Stack = StackNavigator({
  Tab11:{screen: TabStack,navigationOptions: { title: 'Header title' }},
  Tab1Screen1:{screen:Tab1Screen1},
  Tab2Screen1:{screen:Tab2Screen1},
})

**index.js**
import { AppRegistry } from 'react-native'
import { Stack } from './src1/navi.js'
AppRegistry.registerComponent('RNNavigators', () => Stack);

Tab1.js

import React, {Component} from 'react';
import { Text, View, Button } from 'react-native';
import { TabNavigator } from 'react-navigation';

export default class Tab1 extends Component {
  render() {
    return (
      <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
        <Button title="Enter Tab-1 Screen - 1" onPress = {()=> this.props.navigation.navigate('Tab1Screen1')}/>
      </View>
    );
  }
}

Tab2.js

import React, { Component } from 'react';
import { Text, View, Button } from 'react-native';
import { TabNavigator,  } from 'react-navigation';

export default class Tab2 extends Component {
  render() {
    return (
      <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
        <Button title="Enter Tab-2 Screen - 1" onPress = {()=> this.props.navigation.navigate('Tab2Screen1')}/>
      </View>
    );
  }
}

Tab1Screen1.js

从'react'导入React,;从'react-native'导入{Text,View,Button,};

export default class Tab1Screen1 extends Component {render(){return(Tab - 1 Screen1

<Text style={{margin:10}}>I want to open this screen within Tab-1 with header title bat & tab bar</Text>
  </View>
);

} Tab2Screen2.js

import React, {Component} from 'react';
import { Text, View, Button } from 'react-native';

export default class Tab2Screen1 extends Component {
  render() {
    return (
      <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
        <Text>Tab - 2 Screen- 1</Text>

        <Text style={{margin:10}}>I want to open this screen within Tab-2 with Header title & tab bar</Text>
      </View>
    );
  }
}

截图
tab1

tab2

tab1screen1

tab2screen1