App.js 3.26 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
84
85
86
        <Stack.Screen
          name="DetailInfo"
          component={DetailInfo}
          options={{ title: "일일내역" }} />
87
88
89
90
91
        <Stack.Screen
          name="EditOption"
          component={EditOption}
          options={{ title: "편집" }}
        />
Choi Ga Young's avatar
Choi Ga Young committed
92
      </Stack.Navigator>
Choi Ga Young's avatar
Choi Ga Young committed
93
    </NavigationContainer>
Test User's avatar
Test User committed
94
  );
Choi Ga Young's avatar
Choi Ga Young committed
95
}
Test User's avatar
Test User committed
96

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

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