rn-animated-wave-bottom-navigation

1.0.3 • Public • Published
  • A react native dynamic animated floating wave in a bottom tab bar navigation, in typescript.

  • It can be get a dynamic number of tabs.

  • The icons names needs to be belongs to react-native-vector-icons/Feather.

  • It comes with a built-in TypeScript typings and is compatible with all popular JavaScript frameworks. You can use it directly or leverage well-maintained wrapper packages that allow for a more native integration with your frameworks of choice.

Example:

How to use:

import React from 'react';
import { createBottomTabNavigator } from '@react-navigation/bottom-tabs';
import TabBar from './tab-bar/tab-bar';
import { Text, View } from 'react-native';

const Tab = createBottomTabNavigator();

const Screen1 = () => {
  return (
    <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
      <Text>Page 1</Text>
    </View>
  );
};
const Screen2 = () => {
  return (
    <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
      <Text>Page 2</Text>
    </View>
  );
};
const Screen3 = () => {
  return (
    <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
      <Text>Page 3</Text>
    </View>
  );
};
const Screen4 = () => {
  return (
    <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
      <Text>Page 4</Text>
    </View>
  );
};
const Screen5 = () => {
  return (
    <View style={{ flex: 1, justifyContent: 'center', alignItems: 'center' }}>
      <Text>Page 5</Text>
    </View>
  );
};

const AnimatedWaveBottomTab = () => {

  return (
    <Tab.Navigator
      initialRouteName="Home"
      tabBar={props => <TabBar {...props} numOfTabs={5} icons={['home', 'shopping-bag', 'star', 'star', 'star']} />}
    >
      <Tab.Group
        screenOptions={{
          headerShown: false,
        }}
      >
        <Tab.Screen options={{ tabBarLabel: 'Screen1' }} name="Screen1" component={Screen1} />
        <Tab.Screen options={{ tabBarLabel: 'Screen2' }} name="Screen2" component={Screen2} />
        <Tab.Screen options={{ tabBarLabel: 'Screen3' }} name="Screen3" component={Screen3} />
        <Tab.Screen options={{ tabBarLabel: 'Screen4' }} name="Screen4" component={Screen4} />
        <Tab.Screen options={{ tabBarLabel: 'Screen5' }} name="Screen5" component={Screen5} />
      </Tab.Group>
    </Tab.Navigator>
  );
};

export default AnimatedWaveBottomTab;

#TabBar Props - BottomTabBarProps &

Name Type Default
numOfTabs number
icons string[]
tabBarBackgroundColor string
lableStyle TextStyle
iconUnActiveColor string
iconActiveColor string
circleStyle ViewStyle

Package Sidebar

Install

npm i rn-animated-wave-bottom-navigation

Weekly Downloads

21

Version

1.0.3

License

ISC

Unpacked Size

285 kB

Total Files

16

Last publish

Collaborators

  • shelly_amabr