@@ -18,17 +18,28 @@ class MainPage extends Component {
18
18
constructor ( props ) {
19
19
super ( props ) ;
20
20
this . state = {
21
- selectedTab :'tab1' // 默认显示tab1标签
21
+ selectedTab :'tab1' , // 默认显示tab1标签
22
22
} ;
23
23
24
24
this . jumpPage = this . jumpPage . bind ( this ) ;
25
+ this . changeTab = this . changeTab . bind ( this ) ;
26
+ }
27
+
28
+ componentDidMount ( ) {
29
+ this . changeTab ( 'tab1' , 'TabPage1' ) ;
25
30
}
26
31
27
32
// 页面跳转('方法','页面信息')
28
33
jumpPage ( method , routerData ) {
29
34
this . props [ method ] ( routerData ) ;
30
35
}
31
36
37
+ // 切换Tab页(当前tab名,切换到当前tab时导航栏上的title)
38
+ changeTab ( currentTab , titleText ) {
39
+ this . setState ( { selectedTab : currentTab } ) ;
40
+ this . props . setTitleProps ( { name : titleText } ) ;
41
+ }
42
+
32
43
render ( ) {
33
44
return (
34
45
< View style = { { flex : 1 } } >
@@ -38,25 +49,25 @@ class MainPage extends Component {
38
49
title = "Tab1"
39
50
renderIcon = { ( ) => < Image source = { require ( './res/icon_bottomtag_market_n.png' ) } style = { styles . tabImage } /> }
40
51
renderSelectedIcon = { ( ) => < Image source = { require ( './res/icon_bottomtag_market_s.png' ) } style = { styles . tabImage } /> }
41
- onPress = { ( ) => this . setState ( { selectedTab : 'tab1' } ) } >
42
- < TabPage1 routerCallback = { this . jumpPage } />
52
+ onPress = { ( ) => this . changeTab ( 'tab1' , 'TabPage1' ) } >
53
+ < TabPage1 routerCallback = { this . jumpPage } changeNavTitle = { this . changeTitle } />
43
54
</ TabNavigator . Item >
44
55
45
56
< TabNavigator . Item
46
57
selected = { this . state . selectedTab === 'tab2' }
47
58
title = "Tab2"
48
59
renderIcon = { ( ) => < Image source = { require ( './res/icon_bottomtag_home_n.png' ) } style = { styles . tabImage } /> }
49
60
renderSelectedIcon = { ( ) => < Image source = { require ( './res/icon_bottomtag_home_s.png' ) } style = { styles . tabImage } /> }
50
- onPress = { ( ) => this . setState ( { selectedTab : 'tab2' } ) } >
51
- < TabPage2 routerCallback = { this . jumpPage } />
61
+ onPress = { ( ) => this . changeTab ( 'tab2' , 'TabPage2' ) } >
62
+ < TabPage2 routerCallback = { this . jumpPage } changeNavTitle = { this . changeTitle } />
52
63
</ TabNavigator . Item >
53
64
54
65
< TabNavigator . Item
55
66
selected = { this . state . selectedTab === 'tab3' }
56
67
title = "Tab3"
57
68
renderIcon = { ( ) => < Image source = { require ( './res/icon_bottomtag_home_n.png' ) } style = { styles . tabImage } /> }
58
69
renderSelectedIcon = { ( ) => < Image source = { require ( './res/icon_bottomtag_home_s.png' ) } style = { styles . tabImage } /> }
59
- onPress = { ( ) => this . setState ( { selectedTab : 'tab3' } ) } >
70
+ onPress = { ( ) => this . changeTab ( 'tab3' , 'TabPage3' ) } >
60
71
< TabPage3 routerCallback = { this . jumpPage } />
61
72
</ TabNavigator . Item >
62
73
</ TabNavigator >
0 commit comments