杜鑫 4 years ago
parent
commit
1b4a98047f

+ 83 - 11
js/navigator/AppNavigators.js

@@ -1,5 +1,6 @@
 import { createAppContainer, createSwitchNavigator } from "react-navigation"
 import { createStackNavigator } from "react-navigation-stack"
+import { createBottomTabNavigator } from 'react-navigation-tabs'
 import WelcomePage from "../page/WelcomePage"
 import LoginPage from "../page/LoginPage"
 import Register from "../page/Register"
@@ -8,7 +9,6 @@ import Register2 from "../page/Register2"
 import Register3 from "../page/Register3"
 import Meet from "../page/Meet"
 import ForgetPassWord from "../page/ForgetPassWord"
-import HomePage from "../page/HomePage"
 import UserCard from "../page/UserCard"
 import GirlFrienfTerm from "../page/GirlFrienfTerm"
 import GiftPay from "../page/GiftPay"
@@ -27,6 +27,14 @@ import GameHome from "../page/GameHome"
 import RecommendGamer from "../page/RecommendGamer"
 import GamerList from "../page/GamerList"
 import GameLead from "../page/GameLead"
+
+import MainPage from "../page/MainPage"
+import MessagePage from "../page/MessagePage"
+import Entypo from "react-native-vector-icons/Entypo"
+import MaterialCommunityIcons from "react-native-vector-icons/MaterialCommunityIcons"
+import AntDesign from "react-native-vector-icons/AntDesign"
+import React from "react"
+import { Text, TouchableOpacity } from "react-native"
 const InitNavigator = createStackNavigator({
     LoginPage: {
         screen: LoginPage,
@@ -41,6 +49,64 @@ const InitNavigator = createStackNavigator({
         }
     }
 })
+const BottomTabNavigator = createBottomTabNavigator(
+    {//在这里配置页面的路由
+        MainPage: {
+            screen: MainPage,
+            navigationOptions: {
+                tabBarLabel: "主页",
+                tabBarIcon: ({ tintColor, focused }) => (
+                    <MaterialCommunityIcons
+                        name={"home-heart"}
+                        size={26}
+                        style={{ color: tintColor }}
+                    />
+                )
+            }
+        },
+        MessagePage: {
+            screen: MessagePage,
+            navigationOptions: {
+                tabBarLabel: "消息",
+                tabBarIcon: ({ tintColor, focused }) => (
+                    <AntDesign
+                        name={"message1"}
+                        size={26}
+                        style={{ color: tintColor }}
+                    />
+                )
+            }
+        },
+        GamePage: {
+            screen: GameHome,
+            navigationOptions: {
+                tabBarLabel: "游戏",
+                tabBarIcon: ({ tintColor, focused }) => (
+                    <Entypo
+                        name={"game-controller"}
+                        size={26}
+                        style={{ color: tintColor }}
+                    />
+                )
+            }
+        },
+        MyPage: {
+            screen: UserCard,
+            navigationOptions: {
+                tabBarLabel: "我的",
+                tabBarIcon: ({ tintColor, focused }) => (
+                    <AntDesign
+                        name={"smileo"}
+                        size={26}
+                        style={{ color: tintColor }}
+                    />
+                )
+            }
+        }
+
+    }
+);
+
 const MainNavigator = createStackNavigator({
     GameLead: {
         screen: GameLead,
@@ -48,6 +114,13 @@ const MainNavigator = createStackNavigator({
             header: null
         }
     },
+    BottomTabNavigator: {
+        screen: BottomTabNavigator,
+        navigationOptions: {
+            title: '底部导航器',
+            headerShown: false
+        }
+    },
     GamerList: {
         screen: GamerList,
         navigationOptions: {
@@ -56,9 +129,14 @@ const MainNavigator = createStackNavigator({
     },
     RecommendGamer: {
         screen: RecommendGamer,
-        navigationOptions: {
-            headerTitle: "推荐关主"
-        }
+        navigationOptions: ({ navigation }) => (
+            {
+                headerTitle: "推荐关主",
+                headerRight: <TouchableOpacity onPress={() => navigation.navigate("CreatPass")}>
+                    <Text style={{ fontSize: 15, color: "#FF4A6C", marginRight: 10 }}>创建关卡</Text>
+                </TouchableOpacity>
+            }
+        )
     },
     GameHome: {
         screen: GameHome,
@@ -150,12 +228,6 @@ const MainNavigator = createStackNavigator({
             header: null
         }
     },
-    HomePage: {
-        screen: HomePage,
-        navigationOptions: {
-            header: null
-        }
-    },
     Meet: {
         screen: Meet,
         navigationOptions: {
@@ -194,7 +266,7 @@ const MainNavigator = createStackNavigator({
     },
 })
 export default createAppContainer(createSwitchNavigator({
-    Init:InitNavigator,
+    Init: InitNavigator,
     Main: MainNavigator
 },
     {

+ 30 - 9
js/page/Attestation/Attestation.js

@@ -14,12 +14,32 @@ export default class Attestation extends Component {
         pageStatus: 4,
         carTit: "请上传您的行驶证内页图片",
         carSubTit: "(您上传的照片资料仅作认证使用,并将被加密处理)",
-        schoolTit:"请上传您的毕业证书、学位证书或学信网电子证明",
+        schoolTit: "请上传您的毕业证书、学位证书或学信网电子证明",
         schoolSubTit: "(您上传的照片资料仅作认证使用,并将被加密处理)",
-        houseTit:"请上传房产证内页或购房合同内页(需露出署名)",
+        houseTit: "请上传房产证内页或购房合同内页(需露出署名)",
         houseSubTit: "(您上传的照片资料仅作认证使用,并将被加密处理)",
-        workTit:"请选择以下任一材料上传,证明你的工作职业",
-        idTit:"完成身份验证,信用值+10",
+        workTit: "请选择以下任一材料上传,证明你的工作职业",
+        idTit: "完成身份验证,信用值+10",
+    }
+    componentDidMount() {
+        this.setState({
+            pageStatus: this.props.navigation.state.params.status
+        })
+    }
+    toWaitCheck = () => {
+        const { navigation } = this.props;
+        switch (this.state.pageStatus) {
+            case 4:
+                navigation.navigate("WaitAttestation",{status:2})
+                break;
+            case 3:
+                navigation.navigate("WaitAttestation",{status:2})
+            break;
+            case 1:
+                navigation.navigate("WaitAttestation",{status:2})
+            break;
+        }
+
     }
     render() {
         return (
@@ -73,8 +93,8 @@ export default class Attestation extends Component {
                 }
                 {
                     this.state.pageStatus === 2 ? (<Info
-                        infoList={["1.请保证拍摄图片清晰可辨,证书中的印章完整清晰。","2.证书内页的产权拥有人和产权年限等信息须完整清晰,请勿遮挡。"]}
-                    
+                        infoList={["1.请保证拍摄图片清晰可辨,证书中的印章完整清晰。", "2.证书内页的产权拥有人和产权年限等信息须完整清晰,请勿遮挡。"]}
+
                     />) : null
                 }
                 {
@@ -85,12 +105,12 @@ export default class Attestation extends Component {
                 }
                 {
                     this.state.pageStatus === 3 ? (<Icon
-                        IconList={["点击上传个人名片","点击上传个人工牌","点击上传在职证明"]}
+                        IconList={["点击上传个人名片", "点击上传个人工牌", "点击上传在职证明"]}
                     />) : null
                 }
                 {
                     this.state.pageStatus === 3 ? (<Info
-                        infoList={["1、须手持纸质名片拍摄,确保姓名、公司、职位、手机号拍摄清晰,请勿遮挡。","2、在职证明和个人工牌须确保公司、职位、姓名信息区域拍摄清晰,请勿遮挡。"]}
+                        infoList={["1、须手持纸质名片拍摄,确保姓名、公司、职位、手机号拍摄清晰,请勿遮挡。", "2、在职证明和个人工牌须确保公司、职位、姓名信息区域拍摄清晰,请勿遮挡。"]}
                     />) : null
                 }
                 {
@@ -109,11 +129,12 @@ export default class Attestation extends Component {
                 }
                 {
                     this.state.pageStatus === 4 ? (<Info
-                        infoList={["1、证件必须是清晰彩色原件电子版本,支持jpg、png、jpeg的图片格式。","2、拍摄的证件必须无反光、无水印,身份证尽量充满图片,文字清晰可见。"]}
+                        infoList={["1、证件必须是清晰彩色原件电子版本,支持jpg、png、jpeg的图片格式。", "2、拍摄的证件必须无反光、无水印,身份证尽量充满图片,文字清晰可见。"]}
                     />) : null
                 }
                 <View style={styles.bottomBtn}>
                     <MyButtom
+                        onPress={this.toWaitCheck}
                         text={"提交认证"}
                         width={unitWidth * 502}
                         height={unitHeight * 84}

+ 5 - 0
js/page/CreatPass.js

@@ -6,6 +6,10 @@ import Ionicons from "react-native-vector-icons/Ionicons"
 import MyButtom from '../component/MyButton'
 
 export default class CreatPass extends Component {
+    toGamerList = () => {
+        const { navigation } = this.props;
+        navigation.navigate("GamerList")
+    }
     render() {
         return (
             <ScrollView>
@@ -145,6 +149,7 @@ export default class CreatPass extends Component {
                     </View>
                     <View style={styles.bottomBtn}>
                         <MyButtom
+                            onPress={this.toGamerList}
                             text={"发布关卡"}
                             width={unitWidth * 502}
                             height={unitHeight * 84}

+ 12 - 7
js/page/GameHome.js

@@ -1,11 +1,14 @@
 import React, { Component } from "react"
-import { StyleSheet, Text, View, Image, ImageBackground, ScrollView } from "react-native"
+import { StyleSheet, Text, View, Image, ImageBackground, ScrollView, TouchableOpacity } from "react-native"
 import { unitWidth, unitHeight } from "../utils/AdapterUtil";
 import Ionicons from "react-native-vector-icons/Ionicons"
 import FontAwesome5 from "react-native-vector-icons/FontAwesome5"
 
 export default class GameHome extends Component {
-
+    toGamer = () => {
+        const { navigation } = this.props;
+        navigation.navigate("RecommendGamer")
+    }
     render() {
         return (
             <ScrollView>
@@ -15,11 +18,13 @@ export default class GameHome extends Component {
                         style={styles.bannerBgc}
                     />
                     <View style={styles.centerTab}>
-                        <ImageBackground source={require('../../static/tabBgc1.png')}
-                            style={styles.tabBgc}
-                        >
-                            <Text style={styles.tabText}>闯关游戏</Text>
-                        </ImageBackground>
+                        <TouchableOpacity onPress={this.toGamer}>
+                            <ImageBackground source={require('../../static/tabBgc1.png')}
+                                style={styles.tabBgc}
+                            >
+                                <Text style={styles.tabText}>闯关游戏</Text>
+                            </ImageBackground>
+                        </TouchableOpacity>
                         <ImageBackground source={require('../../static/tabBgc2.png')}
                             style={styles.tabBgc}
                         >

+ 10 - 6
js/page/GameLead.js

@@ -4,7 +4,10 @@ import { unitWidth, unitHeight } from "../utils/AdapterUtil";
 import MyButtom from '../component/MyButton'
 
 export default class GameLead extends Component {
-
+    toHomePage = () => {
+        const { navigation } = this.props;
+        navigation.navigate("BottomTabNavigator")
+    }
     render() {
         return (
 
@@ -13,6 +16,7 @@ export default class GameLead extends Component {
             >
                 <View style={styles.btnArea}>
                     <MyButtom
+                        onPress={this.toHomePage}
                         text={"去游戏"}
                         width={unitWidth * 502}
                         height={unitHeight * 84}
@@ -22,13 +26,14 @@ export default class GameLead extends Component {
                         style={{ fontSize: unitWidth * 32 }}
                     />
                     <MyButtom
+                        onPress={this.toHomePage}
                         text={"回主页"}
                         width={unitWidth * 502}
                         height={unitHeight * 84}
                         borderRadius={unitHeight * 84}
                         bgColor="#fff"
                         shadowBgc="rgba(250,120,138,1)"
-                        style={{ fontSize: unitWidth * 32,color:"#FB788A" }}
+                        style={{ fontSize: unitWidth * 32, color: "#FB788A" }}
                     />
                 </View>
 
@@ -43,13 +48,12 @@ export default class GameLead extends Component {
 const styles = StyleSheet.create({
     container: {
         flex: 1,
-        // justifyContent: "center",
         alignItems: "center",
         justifyContent: "flex-end"
     },
-    btnArea:{
-        height:unitHeight * 212,
-        justifyContent:"space-between"
+    btnArea: {
+        height: unitHeight * 212,
+        justifyContent: "space-between"
     },
     textInfo: {
         width: unitWidth * 558,

+ 83 - 83
js/page/HomePage.js

@@ -1,85 +1,85 @@
-import React from "react"
-import { StyleSheet } from "react-native"
-import { createBottomTabNavigator } from "react-navigation-tabs"
-import { createAppContainer } from "react-navigation"
-import MainPage from "./MainPage"
-import MessagePage from "./MessagePage"
-import GamePage from "./GamePage"
-import MyPage from "../page/MyPage"
-import Entypo from "react-native-vector-icons/Entypo"
-import MaterialCommunityIcons from "react-native-vector-icons/MaterialCommunityIcons"
-import AntDesign from "react-native-vector-icons/AntDesign"
+// import React from "react"
+// import { StyleSheet } from "react-native"
+// import { createBottomTabNavigator } from "react-navigation-tabs"
+// import { createAppContainer } from "react-navigation"
+// import MainPage from "./MainPage"
+// import MessagePage from "./MessagePage"
+// import GamePage from "./GamePage"
+// import MyPage from "../page/MyPage"
+// import Entypo from "react-native-vector-icons/Entypo"
+// import MaterialCommunityIcons from "react-native-vector-icons/MaterialCommunityIcons"
+// import AntDesign from "react-native-vector-icons/AntDesign"
 
 
-export default class HomePage extends React.Component {
-    _tabNavigator() {
-        return createAppContainer(
-            createBottomTabNavigator({
-                MainPage: {
-                    screen: MainPage,
-                    navigationOptions: {
-                        tabBarLabel: "主页",
-                        tabBarIcon: ({ tintColor, focused }) => (
-                            <MaterialCommunityIcons
-                                name={"home-heart"}
-                                size={26}
-                                style={{ color: tintColor }}
-                            />
-                        )
-                    }
-                },
-                MessagePage: {
-                    screen: MessagePage,
-                    navigationOptions: {
-                        tabBarLabel: "消息",
-                        tabBarIcon: ({ tintColor, focused }) => (
-                            <AntDesign
-                                name={"message1"}
-                                size={26}
-                                style={{ color: tintColor }}
-                            />
-                        )
-                    }
-                },
-                GamePage: {
-                    screen: GamePage,
-                    navigationOptions: {
-                        tabBarLabel: "游戏",
-                        tabBarIcon: ({ tintColor, focused }) => (
-                            <Entypo
-                                name={"game-controller"}
-                                size={26}
-                                style={{ color: tintColor }}
-                            />
-                        )
-                    }
-                },
-                MyPage: {
-                    screen: MyPage,
-                    navigationOptions: {
-                        tabBarLabel: "我的",
-                        tabBarIcon: ({ tintColor, focused }) => (
-                            <AntDesign
-                                name={"smileo"}
-                                size={26}
-                                style={{ color: tintColor }}
-                            />
-                        )
-                    }
-                }
-            })
-        )
-    }
-    render() {
-        const Tab = this._tabNavigator()
-        return <Tab />
-    }
-}
-const styles = StyleSheet.create({
-    container: {
-        flex: 1,
-        justifyContent: "center",
-        alignItems: "center",
-        backgroundColor: "#0f0"
-    }
-})
+// export default class HomePage extends React.Component {
+//     _tabNavigator() {
+//         return createAppContainer(
+//             createBottomTabNavigator({
+//                 MainPage: {
+//                     screen: MainPage,
+//                     navigationOptions: {
+//                         tabBarLabel: "主页",
+//                         tabBarIcon: ({ tintColor, focused }) => (
+//                             <MaterialCommunityIcons
+//                                 name={"home-heart"}
+//                                 size={26}
+//                                 style={{ color: tintColor }}
+//                             />
+//                         )
+//                     }
+//                 },
+//                 MessagePage: {
+//                     screen: MessagePage,
+//                     navigationOptions: {
+//                         tabBarLabel: "消息",
+//                         tabBarIcon: ({ tintColor, focused }) => (
+//                             <AntDesign
+//                                 name={"message1"}
+//                                 size={26}
+//                                 style={{ color: tintColor }}
+//                             />
+//                         )
+//                     }
+//                 },
+//                 GamePage: {
+//                     screen: GamePage,
+//                     navigationOptions: {
+//                         tabBarLabel: "游戏",
+//                         tabBarIcon: ({ tintColor, focused }) => (
+//                             <Entypo
+//                                 name={"game-controller"}
+//                                 size={26}
+//                                 style={{ color: tintColor }}
+//                             />
+//                         )
+//                     }
+//                 },
+//                 MyPage: {
+//                     screen: MyPage,
+//                     navigationOptions: {
+//                         tabBarLabel: "我的",
+//                         tabBarIcon: ({ tintColor, focused }) => (
+//                             <AntDesign
+//                                 name={"smileo"}
+//                                 size={26}
+//                                 style={{ color: tintColor }}
+//                             />
+//                         )
+//                     }
+//                 }
+//             })
+//         )
+//     }
+//     render() {
+//         const Tab = this._tabNavigator()
+//         return <Tab />
+//     }
+// }
+// const styles = StyleSheet.create({
+//     container: {
+//         flex: 1,
+//         justifyContent: "center",
+//         alignItems: "center",
+//         backgroundColor: "#0f0"
+//     }
+// })

+ 10 - 4
js/page/MainPage.js

@@ -1,7 +1,11 @@
 import React from "react"
-import { StyleSheet, Text, View, ImageBackground } from "react-native"
+import { StyleSheet, Text, View, ImageBackground, TouchableOpacity } from "react-native"
 import { unitWidth, unitHeight, getStatusBarHeight } from "../utils/AdapterUtil";
 export default class MainPage extends React.Component {
+    toMeet = () => {
+        const { navigation } = this.props;
+        navigation.navigate("Meet")
+    }
     render() {
         return (
             <View style={styles.container}>
@@ -10,9 +14,11 @@ export default class MainPage extends React.Component {
                 >
                     <Text style={styles.bgcText}>你会不会催好朋友还钱?</Text>
                 </ImageBackground>
-                <View style={styles.itemArea}>
-                    <Text style={styles.itemText}>A 不催,催账可能产生不必要的隔阂</Text>
-                </View>
+                <TouchableOpacity onPress={this.toMeet}>
+                    <View style={styles.itemArea} >
+                        <Text style={styles.itemText}>A 不催,催账可能产生不必要的隔阂</Text>
+                    </View>
+                </TouchableOpacity>
                 <View style={styles.itemArea}>
                     <Text style={styles.itemText}>B 催,珍惜彼此的信用</Text>
                 </View>

+ 20 - 14
js/page/PassMode1.js

@@ -1,8 +1,12 @@
 import React, { Component } from "react"
-import { StyleSheet, Text, View } from "react-native"
+import { StyleSheet, Text, View, TouchableOpacity } from "react-native"
 import { unitWidth, unitHeight } from "../utils/AdapterUtil";
 
 export default class PassMode1 extends Component {
+    toPassmode = () => {
+        const { navigation } = this.props;
+        navigation.navigate("PassMode")
+    }
     render() {
         return (
             <View style={styles.container}>
@@ -21,14 +25,16 @@ export default class PassMode1 extends Component {
                             <Text style={{ fontSize: unitWidth * 28, color: "#666666" }}>XXXXXXXXXXXXXXXXXXXXXXXXXXXX</Text>
                         </View>
                     </View>
-                    <View style={styles.btnItemRed}>
-                        <View style={styles.btnItemLeft}>
-                            <Text style={{ fontSize: unitWidth * 60, color: "#FFE1EE" }}>B</Text>
-                        </View>
-                        <View style={styles.btnItemRight}>
-                            <Text style={{ fontSize: unitWidth * 28, color: "#666666" }}>XXXXXXXXXXXXXXXXXXXXXXXXXXXX</Text>
+                    <TouchableOpacity onPress={this.toPassmode}>
+                        <View style={styles.btnItemRed}>
+                            <View style={styles.btnItemLeft}>
+                                <Text style={{ fontSize: unitWidth * 60, color: "#FFE1EE" }}>B</Text>
+                            </View>
+                            <View style={styles.btnItemRight}>
+                                <Text style={{ fontSize: unitWidth * 28, color: "#666666" }}>XXXXXXXXXXXXXXXXXXXXXXXXXXXX</Text>
+                            </View>
                         </View>
-                    </View>
+                    </TouchableOpacity>
                     <View style={styles.btnItem}>
                         <View style={styles.btnItemLeft}>
                             <Text style={{ fontSize: unitWidth * 60, color: "#FFE1EE" }}>C</Text>
@@ -74,9 +80,9 @@ const styles = StyleSheet.create({
         fontWeight: "bold"
     },
     btnList: {
-        paddingLeft:unitWidth * 30,
+        paddingLeft: unitWidth * 30,
         marginTop: unitHeight * 60,
-        width:"100%"
+        width: "100%"
     },
     btnItem: {
         width: unitWidth * 642,
@@ -86,8 +92,8 @@ const styles = StyleSheet.create({
         borderRadius: unitHeight * 80,
         flexDirection: "row",
         alignItems: "center",
-        borderWidth:1,
-        borderColor:"#ccc"
+        borderWidth: 1,
+        borderColor: "#ccc"
     },
     btnItemLeft: {
         flex: 1,
@@ -110,7 +116,7 @@ const styles = StyleSheet.create({
         borderRadius: unitHeight * 80,
         flexDirection: "row",
         alignItems: "center",
-        borderWidth:1,
-        borderColor:"#FF4A6C"
+        borderWidth: 1,
+        borderColor: "#FF4A6C"
     }
 })

+ 17 - 4
js/page/RecommendGamer.js

@@ -1,10 +1,18 @@
 import React, { Component } from "react"
-import { StyleSheet, Text, View, Image } from "react-native"
+import { StyleSheet, Text, View, Image} from "react-native"
 import { unitWidth, unitHeight } from "../utils/AdapterUtil";
 import FontAwesome from "react-native-vector-icons/FontAwesome"
 import MyButtom from '../component/MyButton'
 
 export default class RecommendGamer extends Component {
+    toGamerList = () => {
+        const { navigation } = this.props;
+        navigation.navigate("GamerList")
+    }
+    toPassMode = () => {
+        const { navigation } = this.props;
+        navigation.navigate("PassMode1")
+    }
     render() {
         return (
             <View style={styles.container}>
@@ -45,6 +53,7 @@ export default class RecommendGamer extends Component {
                             </View>
                             <View style={styles.itemBottomRight}>
                                 <MyButtom
+                                    onPress={this.toGamerList}
                                     text={"查看关卡"}
                                     width={unitWidth * 144}
                                     height={unitHeight * 58}
@@ -56,6 +65,7 @@ export default class RecommendGamer extends Component {
                                     style={{ fontSize: unitWidth * 28, color: "#FA788A" }}
                                 />
                                 <MyButtom
+                                    onPress={this.toPassMode}
                                     text={"开始闯关"}
                                     width={unitWidth * 144}
                                     height={unitHeight * 58}
@@ -105,6 +115,7 @@ export default class RecommendGamer extends Component {
                             </View>
                             <View style={styles.itemBottomRight}>
                                 <MyButtom
+                                    onPress={this.toGamerList}
                                     text={"查看关卡"}
                                     width={unitWidth * 144}
                                     height={unitHeight * 58}
@@ -116,6 +127,7 @@ export default class RecommendGamer extends Component {
                                     style={{ fontSize: unitWidth * 28, color: "#FA788A" }}
                                 />
                                 <MyButtom
+                                    onPress={this.toPassMode}
                                     text={"开始闯关"}
                                     width={unitWidth * 144}
                                     height={unitHeight * 58}
@@ -129,8 +141,9 @@ export default class RecommendGamer extends Component {
                             </View>
                         </View>
                     </View>
-                
+
                 </View>
+
             </View>
         )
     }
@@ -152,8 +165,8 @@ const styles = StyleSheet.create({
         backgroundColor: "#F9F9F9",
         borderRadius: unitHeight * 10,
         paddingTop: unitHeight * 20,
-        marginBottom:unitHeight * 30,
-        paddingLeft:unitWidth * 20
+        marginBottom: unitHeight * 30,
+        paddingLeft: unitWidth * 20
     },
     itemTop: {
         flexDirection: "row"

+ 27 - 11
js/page/Setting.js

@@ -1,11 +1,19 @@
 import React, { Component } from "react"
-import { StyleSheet, View, Text } from "react-native"
+import { StyleSheet, View, Text, TouchableOpacity } from "react-native"
 import { unitWidth, unitHeight } from "../utils/AdapterUtil";
 import RNPickerSelect from 'react-native-picker-select';
 import AntDesign from "react-native-vector-icons/AntDesign"
 import MyButtom from '../component/MyButton'
 
 export default class Setting extends Component {
+    toSuggestion = () => {
+        const { navigation } = this.props;
+        navigation.navigate("Suggestion")
+    }
+    toUserAgree = () => {
+        const { navigation } = this.props;
+        navigation.navigate("UserAgree")
+    }
     render() {
         return (
             <View style={styles.container}>
@@ -13,6 +21,7 @@ export default class Setting extends Component {
                     <View style={styles.formItem}>
                         <RNPickerSelect
                             placeholder={""}
+                            disabled={true}
                             onValueChange={(value) => console.log(value)}
                             items={[
                                 { label: 'Football', value: 'football' },
@@ -30,16 +39,18 @@ export default class Setting extends Component {
                             </View>
                         </RNPickerSelect>
                     </View>
-                    <View style={styles.formItem}>
-                        <RNPickerSelect
+                    <TouchableOpacity onPress={this.toSuggestion}>
+                        <View style={styles.formItem}>
+                            {/* <RNPickerSelect
                             placeholder={""}
+                            disabled={true}
                             onValueChange={(value) => console.log(value)}
                             items={[
                                 { label: 'Football', value: 'football' },
                                 { label: 'Baseball', value: 'baseball' },
                                 { label: 'Hockey', value: 'hockey' },
                             ]}
-                        >
+                        > */}
                             <View style={styles.itemArea}>
                                 <Text style={{ fontSize: unitWidth * 28, color: "#333333" }}>用户反馈</Text>
                                 <AntDesign
@@ -48,18 +59,22 @@ export default class Setting extends Component {
                                     style={{ color: "#999999" }}
                                 />
                             </View>
-                        </RNPickerSelect>
-                    </View>
-                    <View style={styles.formItem}>
-                        <RNPickerSelect
+                            {/* </RNPickerSelect> */}
+                        </View>
+
+                    </TouchableOpacity>
+                    <TouchableOpacity onPress={this.toUserAgree}>
+                        <View style={styles.formItem}>
+                            {/* <RNPickerSelect
                             placeholder={""}
+                            disabled={true}
                             onValueChange={(value) => console.log(value)}
                             items={[
                                 { label: 'Football', value: 'football' },
                                 { label: 'Baseball', value: 'baseball' },
                                 { label: 'Hockey', value: 'hockey' },
                             ]}
-                        >
+                        > */}
                             <View style={styles.itemArea}>
                                 <Text style={{ fontSize: unitWidth * 28, color: "#333333" }}>用户及隐私协议</Text>
                                 <AntDesign
@@ -68,8 +83,9 @@ export default class Setting extends Component {
                                     style={{ color: "#999999" }}
                                 />
                             </View>
-                        </RNPickerSelect>
-                    </View>
+                            {/* </RNPickerSelect> */}
+                        </View>
+                    </TouchableOpacity>
                     <View style={styles.formItem}>
                         <RNPickerSelect
                             placeholder={""}

+ 5 - 0
js/page/WaitAttestation.js

@@ -6,6 +6,11 @@ export default class WaitAttestation extends Component {
     state = {
         pageStatus: 4
     }
+    componentDidMount() {
+        this.setState({
+            pageStatus: this.props.navigation.state.params.status
+        })
+    }
     render() {
         return (
             <View style={styles.container}>

+ 121 - 59
js/page/userCard.js

@@ -1,5 +1,5 @@
 import React from "react"
-import { StyleSheet, Text, View, Image, ScrollView } from "react-native"
+import { StyleSheet, Text, View, Image, ScrollView, TouchableOpacity } from "react-native"
 import { unitWidth, unitHeight } from "../utils/AdapterUtil";
 import Foundation from "react-native-vector-icons/Foundation"
 import FontAwesome5 from "react-native-vector-icons/FontAwesome5"
@@ -7,30 +7,76 @@ import AntDesign from "react-native-vector-icons/AntDesign"
 import Tips from '../component/Tips'
 export default class UserCard extends React.Component {
     state = {
-        pageStatus: 1
+        pageStatus: 0
     };
+    toCheckName = () => {
+        const { navigation } = this.props;
+        navigation.navigate("Attestation", { status: 4 })
+    }
+    toCheckWork = () => {
+        const { navigation } = this.props;
+        navigation.navigate("Attestation", { status: 3 })
+    }
+    toCheckSchool = () => {
+        const { navigation } = this.props;
+        navigation.navigate("Attestation", { status: 1 })
+    }
+    toCheckHouse = () => {
+        const { navigation } = this.props;
+        navigation.navigate("Attestation", { status: 2 })
+    }
+    toCheckCar = () => {
+        const { navigation } = this.props;
+        navigation.navigate("Attestation", { status: 0 })
+    }
+    toAttInfo = () => {
+        const { navigation } = this.props;
+        navigation.navigate("AttestationInfo")
+    }
+    toMyInfo = () => {
+        const { navigation } = this.props;
+        navigation.navigate("MyInfo")
+    }
+    toGirlFirend = () => {
+        const { navigation } = this.props;
+        navigation.navigate("GirlFrienfTerm")
+    }
+    toSetting = () => {
+        const { navigation } = this.props;
+        navigation.navigate("Setting")
+    }
+    toGift = () => {
+        const { navigation } = this.props;
+        navigation.navigate("MyGift")
+    }
     render() {
         return (
             <ScrollView>
                 <View style={styles.container}>
                     <View style={styles.topBgc}>
-                        <Image
-                            source={require("../../static/bannerBgc.png")}
-                            style={styles.bannerBgc}
-                        />
-                        <View style={styles.userPhoneArea}>
+                        <TouchableOpacity onPress={this.toSetting}>
                             <Image
-                                source={require("../../static/userPhone.png")}
-                                style={styles.userPhone}
+                                source={require("../../static/bannerBgc.png")}
+                                style={styles.bannerBgc}
                             />
-                            <View style={styles.maleIconArea}>
-                                <Foundation
-                                    name={"male-symbol"}
-                                    size={16}
-                                    style={styles.maleIcon}
+                        </TouchableOpacity>
+
+                        <TouchableOpacity onPress={this.toMyInfo}>
+                            <View style={styles.userPhoneArea}>
+                                <Image
+                                    source={require("../../static/userPhone.png")}
+                                    style={styles.userPhone}
                                 />
+                                <View style={styles.maleIconArea}>
+                                    <Foundation
+                                        name={"male-symbol"}
+                                        size={16}
+                                        style={styles.maleIcon}
+                                    />
+                                </View>
                             </View>
-                        </View>
+                        </TouchableOpacity>
+
                     </View>
                     <View style={styles.userTit}>
                         <View style={styles.titRow}>
@@ -43,48 +89,60 @@ export default class UserCard extends React.Component {
                             <Text style={{ fontSize: unitWidth * 28, color: "#FA788A" }}>87%</Text>
                         </View>
                         <View style={styles.attestation}>
-                            <Text style={{ fontSize: unitWidth * 28, color: "#333333" }}>实名认证</Text>
+                            <TouchableOpacity onPress={this.toAttInfo}>
+                                <Text style={{ fontSize: unitWidth * 28, color: "#333333" }}>实名认证</Text>
+                            </TouchableOpacity>
                             <View style={styles.attestationList}>
-                                <View style={styles.attestationItem}>
-                                    <FontAwesome5
-                                        name={"house-damage"}
-                                        size={36}
-                                        style={{ marginBottom: unitHeight * 24, color: "#DEDEDE" }}
-                                    />
-                                    <Text style={{ fontSize: unitWidth * 24, color: "#666666" }}>实名认证</Text>
-                                </View>
-                                <View style={styles.attestationItem}>
-                                    <FontAwesome5
-                                        name={"house-damage"}
-                                        size={36}
-                                        style={{ marginBottom: unitHeight * 24, color: "#DEDEDE" }}
-                                    />
-                                    <Text style={{ fontSize: unitWidth * 24, color: "#666666" }}>实名认证</Text>
-                                </View>
-                                <View style={styles.attestationItem}>
-                                    <FontAwesome5
-                                        name={"house-damage"}
-                                        size={36}
-                                        style={{ marginBottom: unitHeight * 24, color: "#DEDEDE" }}
-                                    />
-                                    <Text style={{ fontSize: unitWidth * 24, color: "#666666" }}>实名认证</Text>
-                                </View>
-                                <View style={styles.attestationItem}>
-                                    <FontAwesome5
-                                        name={"house-damage"}
-                                        size={36}
-                                        style={{ marginBottom: unitHeight * 24, color: "#DEDEDE" }}
-                                    />
-                                    <Text style={{ fontSize: unitWidth * 24, color: "#666666" }}>实名认证</Text>
-                                </View>
-                                <View style={styles.attestationItem}>
-                                    <FontAwesome5
-                                        name={"house-damage"}
-                                        size={36}
-                                        style={{ marginBottom: unitHeight * 24, color: "#DEDEDE" }}
-                                    />
-                                    <Text style={{ fontSize: unitWidth * 24, color: "#666666" }}>实名认证</Text>
-                                </View>
+                                <TouchableOpacity onPress={this.toCheckName}>
+                                    <View style={styles.attestationItem}>
+                                        <FontAwesome5
+                                            name={"house-damage"}
+                                            size={36}
+                                            style={{ marginBottom: unitHeight * 24, color: "#DEDEDE" }}
+                                        />
+                                        <Text style={{ fontSize: unitWidth * 24, color: "#666666" }}>实名认证</Text>
+                                    </View>
+                                </TouchableOpacity>
+                                <TouchableOpacity onPress={this.toCheckWork}>
+                                    <View style={styles.attestationItem}>
+                                        <FontAwesome5
+                                            name={"house-damage"}
+                                            size={36}
+                                            style={{ marginBottom: unitHeight * 24, color: "#DEDEDE" }}
+                                        />
+                                        <Text style={{ fontSize: unitWidth * 24, color: "#666666" }}>工作认证</Text>
+                                    </View>
+                                </TouchableOpacity>
+                                <TouchableOpacity onPress={this.toCheckSchool}>
+                                    <View style={styles.attestationItem}>
+                                        <FontAwesome5
+                                            name={"house-damage"}
+                                            size={36}
+                                            style={{ marginBottom: unitHeight * 24, color: "#DEDEDE" }}
+                                        />
+                                        <Text style={{ fontSize: unitWidth * 24, color: "#666666" }}>学历认证</Text>
+                                    </View>
+                                </TouchableOpacity>
+                                <TouchableOpacity onPress={this.toCheckHouse}>
+                                    <View style={styles.attestationItem}>
+                                        <FontAwesome5
+                                            name={"house-damage"}
+                                            size={36}
+                                            style={{ marginBottom: unitHeight * 24, color: "#DEDEDE" }}
+                                        />
+                                        <Text style={{ fontSize: unitWidth * 24, color: "#666666" }}>房产认证</Text>
+                                    </View>
+                                </TouchableOpacity>
+                                <TouchableOpacity onPress={this.toCheckCar}>
+                                    <View style={styles.attestationItem}>
+                                        <FontAwesome5
+                                            name={"house-damage"}
+                                            size={36}
+                                            style={{ marginBottom: unitHeight * 24, color: "#DEDEDE" }}
+                                        />
+                                        <Text style={{ fontSize: unitWidth * 24, color: "#666666" }}>车辆认证</Text>
+                                    </View>
+                                </TouchableOpacity>
 
                             </View>
                         </View>
@@ -189,7 +247,9 @@ export default class UserCard extends React.Component {
                         </View>
                     </View>
                     <View style={styles.chooseGirlFirend}>
-                        <Text style={styles.itemTitle}>择偶条件</Text>
+                        <TouchableOpacity onPress={this.toGirlFirend}>
+                            <Text style={styles.itemTitle}>择偶条件</Text>
+                        </TouchableOpacity>
                         <View style={styles.friendList}>
                             <Text style={styles.friendItem}>25-33岁</Text>
                             <Text style={styles.friendItem}>155-175cm</Text>
@@ -275,7 +335,9 @@ export default class UserCard extends React.Component {
                         />
                     </View>
                     <View style={styles.gift}>
-                        <Text style={styles.itemTitle}>TA的礼物</Text>
+                        <TouchableOpacity onPress={this.toGift}>
+                            <Text style={styles.itemTitle}>TA的礼物</Text>
+                        </TouchableOpacity>
                         <View style={styles.giftList}>
                             <View style={styles.giftOnce}>
                                 <Image
@@ -294,7 +356,7 @@ export default class UserCard extends React.Component {
                         </View>
                     </View>
                     {
-                        this.state.pageStatus === 0 ? (<View style={styles.bottomtab}>
+                        this.state.pageStatus === 1 ? (<View style={styles.bottomtab}>
                             <View style={styles.tabItem}>
                                 <AntDesign
                                     name={"message1"}