App.js 3.2 KB
Newer Older
1
2
import React from 'react';
import { StyleSheet } from 'react-native';
Choi Ga Young's avatar
Choi Ga Young committed
3
4
import { NavigationContainer } from '@react-navigation/native';
import { createBottomTabNavigator } from '@react-navigation/bottom-tabs';
Choi Ga Young's avatar
Choi Ga Young committed
5
import { createStackNavigator } from '@react-navigation/stack';
Choi Ga Young's avatar
Choi Ga Young committed
6
7
import Ionicons from 'react-native-vector-icons/Ionicons';
import Monthly from './Monthly';
Choi Ga Young's avatar
Choi Ga Young committed
8
import Analy from './Analy';
9
import PostMoney from './PostMoney';
Soo Hyun Kim's avatar
Soo Hyun Kim committed
10
import MainScreen from './MainScreen';
Choi Ga Young's avatar
Choi Ga Young committed
11
import DetailInfo from './DetailInfo';
YoonDongMin's avatar
부채    
YoonDongMin committed
12
import DeptPage from './DeptPage';
YoonDongMin's avatar
DongM    
YoonDongMin committed
13
import InfoDetails from './screens/InfoDetails';
YoonDongMin's avatar
YdM    
YoonDongMin committed
14
15
import MemoPage from './MemoPage';
import MemoDetails from './screens/MemoDetails';
16
import EditOption from './EditOption';
Test User's avatar
Test User committed
17

Choi Ga Young's avatar
Choi Ga Young committed
18
const Tab = createBottomTabNavigator();
Choi Ga Young's avatar
Choi Ga Young committed
19
const Stack = createStackNavigator();
Test User's avatar
Test User committed
20

Choi Ga Young's avatar
Choi Ga Young committed
21
function Home() {
Test User's avatar
Test User committed
22
  return (
Choi Ga Young's avatar
Choi Ga Young committed
23
24
25
    <Tab.Navigator screenOptions={({ route }) => ({
      tabBarIcon: ({ focused, color, size }) => {
        let iconName;
Test User's avatar
Test User committed
26

Choi Ga Young's avatar
Choi Ga Young committed
27
28
29
30
31
32
33
34
        if (route.name === 'Main') {
          iconName = focused
            ? 'home'
            : 'home-outline';
        } else if (route.name === 'Monthly') {
          iconName = focused ? 'calendar' : 'calendar-outline';
        } else if (route.name === 'Analy') {
          iconName = focused ? 'bar-chart' : 'bar-chart-outline';
35
        }
Choi Ga Young's avatar
Choi Ga Young committed
36
37
38
39
40
41
42
43
44
45
46
47
48
49
        return <Ionicons name={iconName} size={size} color={color} />;
      },
    })}
      tabBarOptions={{
        activeTintColor: 'skyblue',
        inactiveTintColor: 'gray',
      }}>
      <Tab.Screen name="Main" component={MainScreen} />
      <Tab.Screen name="Monthly" component={Monthly} />
      <Tab.Screen name="Analy" component={Analy} />
      <Tab.Screen name="PostMoney" component={PostMoney} />
    </Tab.Navigator>
  )
}
Test User's avatar
Test User committed
50

Choi Ga Young's avatar
Choi Ga Young committed
51
52
53
function App() {
  return (
    <NavigationContainer>
YoonDongMin's avatar
YdM    
YoonDongMin committed
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
      <Stack.Navigator screenOptions={{
        headerStyle: {
          backgroundColor: '#eee'
        },
        headerTitleStyle: {
          fontWeight: 'bold',
        },
        headerTitleAlign: 'center'
      }} >
        <Stack.Screen
          name="Home"
          component={Home}
          options={{ headerShown: false }} />
        <Stack.Screen
          name="DeptPage"
          component={DeptPage}
          options={{ title: "부채", headerStyle: { backgroundColor: 'coral' } }} />
        <Stack.Screen
          name="InfoDetails"
          component={InfoDetails}
          options={{ title: "상세정보" }} />
        <Stack.Screen
          name="MemoPage"
          component={MemoPage}
          options={{ title: "메모", headerStyle: { backgroundColor: 'coral' } }} />
        <Stack.Screen
          name="MemoDetails"
          component={MemoDetails}
          options={{ title: "상세내용" }} />
Choi Ga Young's avatar
Choi Ga Young committed
83
        <Stack.Screen name="DetailInfo" component={DetailInfo} />
84
85
86
87
88
        <Stack.Screen
          name="EditOption"
          component={EditOption}
          options={{ title: "편집" }}
        />
Choi Ga Young's avatar
Choi Ga Young committed
89
      </Stack.Navigator>
Choi Ga Young's avatar
Choi Ga Young committed
90
    </NavigationContainer>
Test User's avatar
Test User committed
91
  );
Choi Ga Young's avatar
Choi Ga Young committed
92
}
Test User's avatar
Test User committed
93

Choi Ga Young's avatar
Choi Ga Young committed
94
const style = StyleSheet.create({
YoonDongMin's avatar
YdM    
YoonDongMin committed
95

Choi Ga Young's avatar
Choi Ga Young committed
96
97
98
99
100
  TextInput: {
    borderColor: 'skyblue',
    height: 40,
    margin: 12,
    borderWidth: 1
Test User's avatar
Test User committed
101
  },
Choi Ga Young's avatar
Choi Ga Young committed
102
103
  Font: {
    fontSize: 24
Choi Ga Young's avatar
Choi Ga Young committed
104
105
106
107
  },
  Contents: {
    justifyContent: "center",
    alignItems: "center",
Choi Ga Young's avatar
Choi Ga Young committed
108
    margin: 10
Choi Ga Young's avatar
Choi Ga Young committed
109
  }
Test User's avatar
Test User committed
110
111
});
export default App;