Skip to content

Commit 077ca00

Browse files
added navigation bottom for the home screen
1 parent 8cd5921 commit 077ca00

15 files changed

+8751
-11519
lines changed

android/app/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
apply plugin: "com.android.application"
2-
apply plugin: 'com.google.gms.google-services'
32

43
import com.android.build.OutputFile
54

@@ -221,3 +220,4 @@ task copyDownloadableDepsToLibs(type: Copy) {
221220
}
222221

223222
apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)
223+
apply plugin: 'com.google.gms.google-services'

android/build.gradle

+1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ buildscript {
77
compileSdkVersion = 29
88
targetSdkVersion = 29
99
ndkVersion = "20.1.5948944"
10+
googlePlayServicesAuthVersion = "16.0.1"
1011
}
1112
repositories {
1213
google()

navigation/AppStack.tsx

+52-18
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,63 @@
11
import React from "react";
2-
import { createNativeStackNavigator } from "@react-navigation/native-stack";
3-
import { AppParamList } from "../types/AppParamList";
4-
import HomeScreen from "../screens/HomeScreen";
2+
import { createMaterialBottomTabNavigator } from "@react-navigation/material-bottom-tabs";
3+
import MaterialIcons from "react-native-vector-icons/MaterialIcons";
4+
import BookmarkScreen from "../screens/BookmarkScreen";
5+
import ExploreScreen from "../screens/ExploreScreen";
56

6-
interface AppStackProps {}
7+
import HomeScreen from "../screens/HomeScreen";
8+
import ProfileScreen from "../screens/ProfileScreen";
79

8-
const Stack = createNativeStackNavigator<AppParamList>();
10+
const Tab = createMaterialBottomTabNavigator();
911

10-
const AppStack: React.FC<AppStackProps> = ({}) => {
12+
function AppStack() {
1113
return (
12-
<Stack.Navigator
13-
screenOptions={{
14-
header: () => null,
15-
}}
16-
initialRouteName="HomeScreen"
14+
<Tab.Navigator
15+
initialRouteName="Home"
16+
activeColor="#000"
17+
barStyle={{ backgroundColor: "white" }}
1718
>
18-
<Stack.Screen
19-
// options={{
20-
// headerTitle: "Sign In"
21-
// }}
22-
name="HomeScreen"
19+
<Tab.Screen
20+
name="Home"
2321
component={HomeScreen}
22+
options={{
23+
tabBarLabel: "Home",
24+
tabBarIcon: ({ color }) => (
25+
<MaterialIcons name="home" color={color} size={26} />
26+
),
27+
}}
28+
/>
29+
<Tab.Screen
30+
name="Search"
31+
component={ExploreScreen}
32+
options={{
33+
tabBarLabel: "Search",
34+
tabBarIcon: ({ color }) => (
35+
<MaterialIcons name="search" color={color} size={26} />
36+
),
37+
}}
38+
/>
39+
<Tab.Screen
40+
name="BookMark"
41+
component={BookmarkScreen}
42+
options={{
43+
tabBarLabel: "Bookmarks",
44+
tabBarIcon: ({ color }) => (
45+
<MaterialIcons name="bookmark-border" color={color} size={26} />
46+
),
47+
}}
48+
/>
49+
<Tab.Screen
50+
name="Profile"
51+
component={ProfileScreen}
52+
options={{
53+
tabBarLabel: "Profile",
54+
tabBarIcon: ({ color }) => (
55+
<MaterialIcons name="person" color={color} size={26} />
56+
),
57+
}}
2458
/>
25-
</Stack.Navigator>
59+
</Tab.Navigator>
2660
);
27-
};
61+
}
2862

2963
export default AppStack;

navigation/AuthStack.tsx

+9-1
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,22 @@
1-
import React from "react";
1+
import React, { useEffect } from "react";
22
import { createNativeStackNavigator } from "@react-navigation/native-stack";
33
import { AuthParamList } from "../types/AuthParamList";
44
import LoginScreen from "../screens/LoginScreen";
55
import SignupScreen from "../screens/SignupScreen";
6+
import { GoogleSignin } from "@react-native-google-signin/google-signin";
7+
import { NavigationContainer } from "@react-navigation/native";
68

79
interface AuthStackProps {}
810

911
const Stack = createNativeStackNavigator<AuthParamList>();
1012

1113
const AuthStack: React.FC<AuthStackProps> = ({}) => {
14+
useEffect(() => {
15+
GoogleSignin.configure({
16+
webClientId:
17+
"117683662084-1r32h7r8jm18gno47q727m40cnp5qfed.apps.googleusercontent.com",
18+
});
19+
}, []);
1220
return (
1321
<Stack.Navigator
1422
screenOptions={{

navigation/Routes.tsx

+1
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ const Routes = () => {
2525
return (
2626
<NavigationContainer>
2727
{state.user ? <AppStack /> : <AuthStack />}
28+
{/* <AuthStack /> */}
2829
</NavigationContainer>
2930
);
3031
};

0 commit comments

Comments
 (0)