59 lines
1.5 KiB
TypeScript
59 lines
1.5 KiB
TypeScript
import { Tabs } from 'expo-router';
|
|
import { Ionicons } from '@expo/vector-icons';
|
|
import { useApp } from '../../context/AppContext';
|
|
import { useColors } from '../../constants/Colors';
|
|
|
|
export default function TabLayout() {
|
|
const { isDarkMode, colorPalette, t } = useApp();
|
|
const colors = useColors(isDarkMode, colorPalette);
|
|
|
|
return (
|
|
<Tabs
|
|
screenOptions={{
|
|
headerShown: false,
|
|
tabBarActiveTintColor: colors.primary,
|
|
tabBarInactiveTintColor: colors.textMuted,
|
|
tabBarStyle: {
|
|
backgroundColor: colors.tabBarBg,
|
|
borderTopColor: colors.tabBarBorder,
|
|
height: 85,
|
|
paddingTop: 8,
|
|
paddingBottom: 28,
|
|
},
|
|
tabBarLabelStyle: {
|
|
fontSize: 10,
|
|
fontWeight: '600',
|
|
},
|
|
}}
|
|
>
|
|
<Tabs.Screen
|
|
name="index"
|
|
options={{
|
|
title: t.tabPlants,
|
|
tabBarIcon: ({ color, size }) => (
|
|
<Ionicons name="leaf-outline" size={size} color={color} />
|
|
),
|
|
}}
|
|
/>
|
|
<Tabs.Screen
|
|
name="search"
|
|
options={{
|
|
title: t.tabSearch,
|
|
tabBarIcon: ({ color, size }) => (
|
|
<Ionicons name="search-outline" size={size} color={color} />
|
|
),
|
|
}}
|
|
/>
|
|
<Tabs.Screen
|
|
name="profile"
|
|
options={{
|
|
title: t.tabProfile,
|
|
tabBarIcon: ({ color, size }) => (
|
|
<Ionicons name="person-outline" size={size} color={color} />
|
|
),
|
|
}}
|
|
/>
|
|
</Tabs>
|
|
);
|
|
}
|