第一步,下载依赖

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

第二步,引入

import TabNavigator from 'react-native-tab-navigator';

第三步,使用

<TabNavigator>
<TabNavigator.Item
selected={this.state.selectedTab === '首页'}
title="首页"
titleStyle={styles.tabText}
selectedTitleStyle={styles.selectedTabText}
renderIcon={() => <Image style={styles.icon} source={require("./images/home165.png")} />}
renderSelectedIcon={() => <Image style={styles.icon} source={require("./images/home165.png")} />}
onPress={() => this.setState({ selectedTab: '首页' })}>
<App/>
</TabNavigator.Item>
<TabNavigator.Item
selected={this.state.selectedTab === '我的'}
title="我的"
titleStyle={styles.tabText}
selectedTitleStyle={styles.selectedTabText}
renderIcon={() => <Image style={styles.icon} source={require("./images/twitter.png")} />}
renderSelectedIcon={() => <Image style={styles.icon} source={require("./images/twitter.png")} />}
onPress={() => this.setState({ selectedTab: '我的' })}>
<BlackHole/>
</TabNavigator.Item>
</TabNavigator>

注意:选中和默认的图片这里为了方便我使用的是同一张图片

然后执行react-native run-android 若看到如下界面说明你编写成功了,若没有成功,可以留言一起讨论

如下是完整代码

/**
* Sample React Native App
* https://github.com/facebook/react-native
* @flow
*/ import React, { Component } from 'react';
import {
StyleSheet,
Text,
View,
Image
} from 'react-native';
import TabNavigator from 'react-native-tab-navigator';
import App from './layouts/main/App';//需要你自行建立编写js
import BlackHole from './layouts/accout/BlackHole';//需要你自行建立编写js
export default class Index extends Component {
constructor(){
super();
this.state = {
selectedTab: '首页',
}
}
render() {
return (
<View style={styles.container}>
<TabNavigator>
<TabNavigator.Item
selected={this.state.selectedTab === '首页'}
title="首页"
titleStyle={styles.tabText}
selectedTitleStyle={styles.selectedTabText}
renderIcon={() => <Image style={styles.icon} source={require("./images/home165.png")} />}
renderSelectedIcon={() => <Image style={styles.icon} source={require("./images/home165.png")} />}
onPress={() => this.setState({ selectedTab: '首页' })}>
<App/>
</TabNavigator.Item>
<TabNavigator.Item
selected={this.state.selectedTab === '我的'}
title="我的"
titleStyle={styles.tabText}
selectedTitleStyle={styles.selectedTabText}
renderIcon={() => <Image style={styles.icon} source={require("./images/twitter.png")} />}
renderSelectedIcon={() => <Image style={styles.icon} source={require("./images/twitter.png")} />}
onPress={() => this.setState({ selectedTab: '我的' })}>
<BlackHole/>
</TabNavigator.Item>
</TabNavigator>
</View>
);
}
} const styles = StyleSheet.create({
container: {
flex: 1
},
tabText: {
color: "#666666",
fontSize: 13
},
selectedTabText: {
color: "#ff8a00",
fontSize: 13
},
icon: {
width: 25,
height: 25,
}
});

最新文章

  1. 将 instance 连接到 flat_net - 每天5分钟玩转 OpenStack(88)
  2. Javascript 面向对象编程(一):封装
  3. 剑指Offer面试题:23.二叉树中和为某一值的路径
  4. json和jsonp的区别,ajax和jsonp的区别
  5. 常用IDEA快捷键
  6. [转载]Grunt插件之LiveReload 实现页面自动刷新,所见即所得编辑
  7. EF6 CodeFirst 实践系列文章列表
  8. centos6.5 nginx开机启动
  9. 带有&#215;的EditText
  10. minitools
  11. SVN ignores
  12. c++在string类源
  13. javascript正则表达式小数类型
  14. 对于形式参数只能用final修饰符,其它任何修饰符都会引起编译器错误
  15. C++数组的初始化
  16. ssh框架 基本整合
  17. C语言中数组变量和指针变量
  18. Linux的is not in the sudoers file 解决
  19. Android:视频(VideoView/MediaPlayer)
  20. 十大经典排序算法-JS篇

热门文章

  1. iOS10原生的语音转文字功能
  2. hung_task_timeout_secs和blocked for more than 120 seconds的解决方法
  3. json序列化以及反序列化存在多个对象时候的处理
  4. browse-agent type and curl post
  5. OWA (Office Web Access)
  6. [skill][graphviz] 到底用什么画图: graphviz/inkscape/yed
  7. Calcite - StreamingSQL
  8. oracle查表技巧
  9. day5_递归调用
  10. ADO多线程数据库总结