|
1 | 1 | 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"; |
5 | 6 |
|
6 |
| -interface AppStackProps {} |
| 7 | +import HomeScreen from "../screens/HomeScreen"; |
| 8 | +import ProfileScreen from "../screens/ProfileScreen"; |
7 | 9 |
|
8 |
| -const Stack = createNativeStackNavigator<AppParamList>(); |
| 10 | +const Tab = createMaterialBottomTabNavigator(); |
9 | 11 |
|
10 |
| -const AppStack: React.FC<AppStackProps> = ({}) => { |
| 12 | +function AppStack() { |
11 | 13 | 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" }} |
17 | 18 | >
|
18 |
| - <Stack.Screen |
19 |
| - // options={{ |
20 |
| - // headerTitle: "Sign In" |
21 |
| - // }} |
22 |
| - name="HomeScreen" |
| 19 | + <Tab.Screen |
| 20 | + name="Home" |
23 | 21 | 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 | + }} |
24 | 58 | />
|
25 |
| - </Stack.Navigator> |
| 59 | + </Tab.Navigator> |
26 | 60 | );
|
27 |
| -}; |
| 61 | +} |
28 | 62 |
|
29 | 63 | export default AppStack;
|
0 commit comments