-
Notifications
You must be signed in to change notification settings - Fork 0
/
App.tsx
74 lines (67 loc) · 2.44 KB
/
App.tsx
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
/**
* Sample React Native App
* https://github.com/facebook/react-native
*
* @format
*/
import React from 'react';
import {
View,
Text,
Image,
ImageBackground,
StyleSheet
} from 'react-native';
import { NavigationContainer } from '@react-navigation/native';
import { createStackNavigator } from '@react-navigation/stack';
import MapLocations from './components/MapLocations';
import LocationSelector from './components/LocationSelector';
import CityList from './components/CityList';
import RestaurantList from './components/RestaurantList';
import MainPage from './components/MainPage';
import RegisterPage from './components/RegisterPage';
import LoginPage from './components/LoginPage';
import { useNavigation } from '@react-navigation/native';
import { ActivityIndicator } from "@react-native-material/core";
const Stack = createStackNavigator();
const LoadingPage = () => {
const navigation = useNavigation();
return(
setTimeout(() => {
navigation.navigate("LocationSelector");
}, 2000),
<View style={{flex: 1}}>
<ImageBackground source={require("./components/assets/background.png")} resizeMode="cover" style={{flex: 1, width: '100%', justifyContent: 'center', alignItems: 'center'}}>
<Image source={require("./components/assets/logo.png")} style={{width: 200, height: 100}} />
<View style={styles.loadingStyle}><ActivityIndicator size="large" color='white'/></View>
</ImageBackground>
</View>
)
}
const MyStack = () => {
return (
<Stack.Navigator>
<Stack.Screen name="Home" component={LoadingPage} options={{headerShown: false}} />
<Stack.Screen name="LocationSelector" component={LocationSelector} options={{headerShown: false}} />
<Stack.Screen name="RestaurantList" component={RestaurantList} options={{headerShown: false}} />
<Stack.Screen name="CityList" component={CityList} options={{headerShown: false}} />
<Stack.Screen name="MainPage" component={MainPage} options={{headerShown: false}} />
<Stack.Screen name="RegisterPage" component={RegisterPage} options={{headerShown: false}} />
<Stack.Screen name="LoginPage" component={LoginPage} options={{headerShown: false}} />
</Stack.Navigator>
);
}
function App(): JSX.Element {
return (
<NavigationContainer>
<MyStack />
</NavigationContainer>
);
}
const styles = StyleSheet.create({
loadingStyle: {
justifyContent: 'center',
alignItems: 'center'
},
})
export default App;