mirror of
https://github.com/zhigang1992/react-navigation.git
synced 2026-04-28 12:25:21 +08:00
70 lines
1.8 KiB
TypeScript
70 lines
1.8 KiB
TypeScript
import * as React from 'react';
|
|
import { StyleSheet } from 'react-native';
|
|
import { createMaterialBottomTabNavigator } from '@react-navigation/material-bottom-tabs';
|
|
import Albums from '../Shared/Albums';
|
|
import Contacts from '../Shared/Contacts';
|
|
import Chat from '../Shared/Chat';
|
|
import SimpleStackScreen from './SimpleStack';
|
|
|
|
type MaterialBottomTabParams = {
|
|
Article: undefined;
|
|
Albums: undefined;
|
|
Contacts: undefined;
|
|
Chat: undefined;
|
|
};
|
|
|
|
const MaterialBottomTabs = createMaterialBottomTabNavigator<
|
|
MaterialBottomTabParams
|
|
>();
|
|
|
|
export default function MaterialBottomTabsScreen() {
|
|
return (
|
|
<MaterialBottomTabs.Navigator barStyle={styles.tabBar}>
|
|
<MaterialBottomTabs.Screen
|
|
name="Article"
|
|
options={{
|
|
tabBarLabel: 'Article',
|
|
tabBarIcon: 'file-document-box',
|
|
tabBarColor: '#C9E7F8',
|
|
}}
|
|
>
|
|
{props => <SimpleStackScreen {...props} headerMode="none" />}
|
|
</MaterialBottomTabs.Screen>
|
|
<MaterialBottomTabs.Screen
|
|
name="Chat"
|
|
component={Chat}
|
|
options={{
|
|
tabBarLabel: 'Chat',
|
|
tabBarIcon: 'message-reply',
|
|
tabBarColor: '#9FD5C9',
|
|
tabBarBadge: true,
|
|
}}
|
|
/>
|
|
<MaterialBottomTabs.Screen
|
|
name="Contacts"
|
|
component={Contacts}
|
|
options={{
|
|
tabBarLabel: 'Contacts',
|
|
tabBarIcon: 'contacts',
|
|
tabBarColor: '#F7EAA2',
|
|
}}
|
|
/>
|
|
<MaterialBottomTabs.Screen
|
|
name="Albums"
|
|
component={Albums}
|
|
options={{
|
|
tabBarLabel: 'Albums',
|
|
tabBarIcon: 'image-album',
|
|
tabBarColor: '#FAD4D6',
|
|
}}
|
|
/>
|
|
</MaterialBottomTabs.Navigator>
|
|
);
|
|
}
|
|
|
|
const styles = StyleSheet.create({
|
|
tabBar: {
|
|
backgroundColor: 'white',
|
|
},
|
|
});
|