使用react-native-tab-navigator创建底部Tab导航

1.使用npm安装react-native-tab-navigator

   npm install react-native-tab-navigator --save

2.页面引入

   import TabNavigator from 'react-native-tab-navigator

3.完整代码


import React, {Component} from 'react';
import { StyleSheet, View, Image} from 'react-native';
import TabNavigator from 'react-native-tab-navigator' type Props = {};
export default class App extends Component<Props> {
constructor(props){
super(props);
this.state = {
selectedTab: 'tb_popular', // 默认选择第一个
} }
render() {
return ( //selected:所选tab项指代名称
//selectedTitleStyle:设置选中颜色
//title: tab项展示名称
//renderIcon:默认icon
//renderSelectedIcon :选中icon
//badgeText:徽标数
<TabNavigator>
<TabNavigator.Item
selected = {this.state.selectedTab == 'tb_popular'}
selectedTitleStyle = {{ color: 'red'}}
title = '最热'
renderIcon = { () => <Image style={styles.image} source={require('./res/images/ic_polular.png')} /> }
renderSelectedIcon = { () => <Image style={[styles.image,{tintColor:'red'}]} source = {require('./res/images/ic_polular.png')} />}
badgeText = '1'
onPress = {() => this.setState({ selectedTab: 'tb_popular'})}>
<View style = {styles.page}></View>
</TabNavigator.Item>
<TabNavigator.Item
selected = { this.state.selectedTab == 'tb_trending'}
selectedTitleStyle = {{ color: 'red'}}
title = "趋势"
renderIcon = { () => <Image style={styles.image} source={ require('./res/images/ic_trending.png')}/>}
renderSelectedIcon = { () => <Image style={[styles.image,{tintColor:'red'}]} source = {require('./res/images/ic_trending.png')} />}
onPress = { () => this.setState({ selectedTab: 'tb_trending'})}>
<View style = {styles.page1}></View>
</TabNavigator.Item>
<TabNavigator.Item
selected = {this.state.selectedTab == 'tb_favorite'}
selectedTitleStyle = {{ color: 'red'}}
title = '收藏'
renderIcon = { () => <Image style={styles.image} source={require('./res/images/ic_polular.png')} /> }
renderSelectedIcon = { () => <Image style={[styles.image,{tintColor:'red'}]} source = {require('./res/images/ic_polular.png')} />}
badgeText = '1'
onPress = {() => this.setState({ selectedTab: 'tb_favorite'})}>
<View style = {styles.page}></View>
</TabNavigator.Item>
<TabNavigator.Item
selected = { this.state.selectedTab == 'tb_my'}
selectedTitleStyle = {{ color: 'red'}}
title = "我的"
renderIcon = { () => <Image style={styles.image} source={ require('./res/images/ic_trending.png')}/>}
renderSelectedIcon = { () => <Image style={[styles.image,{tintColor:'red'}]} source = {require('./res/images/ic_trending.png')} />}
onPress = { () => this.setState({ selectedTab: 'tb_my'})}>
<View style = {styles.page1}></View>
</TabNavigator.Item>
</TabNavigator>
);
}
} const styles = StyleSheet.create({
page:{
flex:1,
backgroundColor:'red',
},
page1:{
flex:1,
backgroundColor:'yellow'
},
image:{
height:22,
width:22
}
});

4.执行结果

最新文章

  1. Hibernate4.2.4入门(一)——环境搭建和简单例子
  2. Spring Mock
  3. wind的R接口、况客RSDK学习,双冒号以及quantmod主题
  4. 1310. ACM Diagnostics
  5. 浅析jQuery删除节点的三个方法
  6. 国内大学毕业论文 LaTeX 模板集合
  7. 【hibernate criteria】hibernate中criteria的完整用法 转
  8. sql 事务使用
  9. MVC的小知识点
  10. 解决win8.1右键菜单出现在左边
  11. LR(1)表生成算法演示程序
  12. error C2143: 语法错误 : 缺少“;”(在“using”的前面)
  13. css3的box-sizing--从此不用担心盒模型的不兼容
  14. Ubuntu16.04修改内核启动
  15. 服务器cpu100%问题分析
  16. python数据类型——字典类型
  17. Linux环境下安装weblogic10.3.2
  18. [转][C#]ImageHelper
  19. 【转载】阿里云ECS服务器监控资源使用情况
  20. codeforces590a//Median Smoothing//Codeforces Round #327 (Div. 1)

热门文章

  1. python基础:3.高级运算符
  2. Halo(八)
  3. Component series.liquidFill not exists. Load it first.
  4. springBoot03- springboot+jpa+thymeleaf增删改查
  5. Android开发新手常见的10个误区
  6. php strnatcasecmp()函数 语法
  7. php htmlspecialchars()函数 语法
  8. PCB底层打印到热转印纸上 Altium Designer
  9. Dllregisterserver调用失败解决方法
  10. Jmeter 线程之间传递参数