aboutsummaryrefslogtreecommitdiff
path: root/mobile/hello-world/navigation
diff options
context:
space:
mode:
authorSamarth Agarwal <samarth.agarwal@mail.utoronto.ca>2019-02-18 17:27:16 +0000
committerSamarth Agarwal <samarth.agarwal@mail.utoronto.ca>2019-02-18 17:27:16 +0000
commit8bd4103139debd92802a18df8aeb247fc3e730bb (patch)
tree469fbd4eaad1c8081af86cf9808ac3adbc4dc8cd /mobile/hello-world/navigation
parent9a647161abaee0a2d7a14cb54034b32f926d856f (diff)
Created folder /mobile/ and added all files and folders created by Expo.
Diffstat (limited to 'mobile/hello-world/navigation')
-rw-r--r--mobile/hello-world/navigation/AppNavigator.js10
-rw-r--r--mobile/hello-world/navigation/MainTabNavigator.js60
2 files changed, 70 insertions, 0 deletions
diff --git a/mobile/hello-world/navigation/AppNavigator.js b/mobile/hello-world/navigation/AppNavigator.js
new file mode 100644
index 0000000..895062a
--- /dev/null
+++ b/mobile/hello-world/navigation/AppNavigator.js
@@ -0,0 +1,10 @@
+import React from 'react';
+import { createAppContainer, createSwitchNavigator } from 'react-navigation';
+
+import MainTabNavigator from './MainTabNavigator';
+
+export default createAppContainer(createSwitchNavigator({
+ // You could add another route here for authentication.
+ // Read more at https://reactnavigation.org/docs/en/auth-flow.html
+ Main: MainTabNavigator,
+})); \ No newline at end of file
diff --git a/mobile/hello-world/navigation/MainTabNavigator.js b/mobile/hello-world/navigation/MainTabNavigator.js
new file mode 100644
index 0000000..ce7efd1
--- /dev/null
+++ b/mobile/hello-world/navigation/MainTabNavigator.js
@@ -0,0 +1,60 @@
+import React from 'react';
+import { Platform } from 'react-native';
+import { createStackNavigator, createBottomTabNavigator } from 'react-navigation';
+
+import TabBarIcon from '../components/TabBarIcon';
+import HomeScreen from '../screens/HomeScreen';
+import LinksScreen from '../screens/LinksScreen';
+import SettingsScreen from '../screens/SettingsScreen';
+
+const HomeStack = createStackNavigator({
+ Home: HomeScreen,
+});
+
+HomeStack.navigationOptions = {
+ tabBarLabel: 'Home',
+ tabBarIcon: ({ focused }) => (
+ <TabBarIcon
+ focused={focused}
+ name={
+ Platform.OS === 'ios'
+ ? `ios-information-circle${focused ? '' : '-outline'}`
+ : 'md-information-circle'
+ }
+ />
+ ),
+};
+
+const LinksStack = createStackNavigator({
+ Links: LinksScreen,
+});
+
+LinksStack.navigationOptions = {
+ tabBarLabel: 'Links',
+ tabBarIcon: ({ focused }) => (
+ <TabBarIcon
+ focused={focused}
+ name={Platform.OS === 'ios' ? 'ios-link' : 'md-link'}
+ />
+ ),
+};
+
+const SettingsStack = createStackNavigator({
+ Settings: SettingsScreen,
+});
+
+SettingsStack.navigationOptions = {
+ tabBarLabel: 'Settings',
+ tabBarIcon: ({ focused }) => (
+ <TabBarIcon
+ focused={focused}
+ name={Platform.OS === 'ios' ? 'ios-options' : 'md-options'}
+ />
+ ),
+};
+
+export default createBottomTabNavigator({
+ HomeStack,
+ LinksStack,
+ SettingsStack,
+});