react-native-router-flux 下部导航
2024-10-03 20:59:09
github url:https://github.com/aksonov/react-native-router-flux
API: https://github.com/aksonov/react-native-router-flux/blob/master/docs/API_CONFIGURATION.md
react-native-router-flux使用示例:
/**
* Sample React Native App
* https://github.com/facebook/react-native
*/
'use strict';
import {
AppRegistry,
View,
Text,
StyleSheet,
Image,
} from "react-native";
import React, { Component } from "react";
import {
Navigation,
Scene,
Router
} from 'react-native-router-flux';
import Index from './page/index';
import Me from './page/me';
import Info from './page/info';
import Type from './page/type';
import Car from './page/shopCar';
import Register from './page/register';
import Userinfo from './page/userinfo';
import Icon from 'react-native-vector-icons/FontAwesome';
class TabBar extends Component{
constructor(props){
super(props);
this.data={
index:{
title:"首页",
icon:"home",
},
type:{
title:"分类",
icon:"th-large",
},
car:{
title:"购物车",
icon:"shopping-cart",
},
me:{
title:"我的",
icon:"user",
}
}
}
render(){
let param=this.data[this.props.sceneKey];
let activeStyle=this.props.selected?{color:"#3399FF"}:{};
return <View>
<Icon name={param.icon} color={activeStyle.color} size={25}/>
<Text style={[activeStyle,styles.tabbarItem]}>{param.title}</Text>
</View>
}
}
class App extends Component {
constructor(props){
super(props);
}
render() {
const iconSize=30;
return (
<Router>
{/*下部导航开始*/}
<Scene key="tabbar" name="tabbar" duration={0} tabs={true} style={styles.tabbarContainer} initial={true}>
<Scene key="index" duration={0} component={Index} title="首页" icon={TabBar} />
<Scene key="type" duration={0} component={Type} title="分类" icon={TabBar} />
<Scene key="car" duration={0} component={Car} title="购物车" icon={TabBar} />
<Scene key="me" duration={0} component={Me} hideNavBar={true} title="我的" icon={TabBar} />
</Scene>
{/*下部导航结束*/}
<Scene key="info" duration={0} hideNavBar={true} component={Info} title="详情"></Scene>
<Scene key="register" duration={0} hideNavBar={true} component={Register} title="注册"></Scene>
<Scene key="userinfo" duration={0} component={Userinfo} title="用户详情"></Scene>
</Router>
)
}
}
var styles=StyleSheet.create({
tabbarContainer:{
flex:1,
backgroundColor:"#f6f6f6",
},
tabbarItem:{
alignItems:"center",
justifyContent:"center",
textAlign:"center",
marginLeft:-3
}
})
AppRegistry.registerComponent('reactApp', () => App);
最新文章
- Spring学习记录(二)---容器和bean属性配置
- SQL Server 监控统计阻塞脚本信息
- 物理Data Guard的日常维护
- html的<;!DOCTYPE>;标签初窥
- C#中的抽象方法和虚方法有什么区别?
- makefile--编码修改-空格出现错误
- js避免全局污染
- 解决libpython2.6.so.1.0: cannot open shared object file
- Unity3D换装系统
- print、println与printf之间的区别
- java基础(十一 )-----反射——Java高级开发必须懂的
- sitecore开发入门Sitecore的CRUD操作 - 第二部分
- Elasticsearch系列(2):安装Elasticsearch(Linux环境)
- [python]UnicodeEncodeError: &#39;gbk&#39; codec can&#39;t encode character &#39;\ufffd&#39;
- 安全系列之CSRF初探
- exe4j中";this executable was created with an evaluation version exe4j";的解决
- Axure RP 8 下载 激活可以使用的授权码、用户名、秘钥等
- UVA-575-水题-模拟
- linux处理U盘中的资料-挂载-tar.gz软件安装-linux环境下软件的安装方式
- S2-052复现过程(附POC利用)