62 lines
1.8 KiB
TypeScript

import { HapticTab } from '@/components/HapticTab';
import { IconSymbol } from '@/components/ui/IconSymbol';
import TabBarBackground from '@/components/ui/TabBarBackground';
import { Colors } from '@/constants/Colors';
import { Tabs } from 'expo-router';
import React from 'react';
import { Platform, useColorScheme } from 'react-native';
export default function TabLayout() {
const colorScheme = useColorScheme();
return (
<Tabs
screenOptions={{
tabBarActiveTintColor: Colors[colorScheme ?? 'dark'].tint,
headerShown: false,
tabBarButton: HapticTab,
tabBarBackground: TabBarBackground,
tabBarStyle: Platform.select({
ios: {
// Use a transparent background on iOS to show the blur effect
position: 'absolute',
},
android: {
// Use a solid background on Android
backgroundColor: Colors[colorScheme ?? 'dark'].background,
},
default: {},
}),
}}>
<Tabs.Screen
name="index"
options={{
title: 'Home',
tabBarIcon: ({ color }) => <IconSymbol size={28} name="house.fill" color={color} />,
}}
/>
<Tabs.Screen
name="map"
options={{
title: 'map',
tabBarIcon: ({ color }) => <IconSymbol size={28} name="map.fill" color={color} />,
}}
/>
<Tabs.Screen
name="mapList"
options={{
title: 'Prayer Spaces',
tabBarIcon: ({ color }) => <IconSymbol size={28} name="chevron.left.forwardslash.chevron.right" color={color} />,
}}
/>
<Tabs.Screen
name="prayTime"
options={{
title: 'Prayer Times',
tabBarIcon: ({ color }) => <IconSymbol size={28} name="clock.fill" color={color} />,
}}
/>
</Tabs>
);
}