jm-zion / rn-wave-bottom-bar Goto Github PK
View Code? Open in Web Editor NEW๐ Animated Tab Bottom Bar for react-navigation
License: MIT License
๐ Animated Tab Bottom Bar for react-navigation
License: MIT License
<Tab.Screen
options={{
tabBarBadge: totalUnreadMessages ? totalUnreadMessages : undefined,
tabBarIcon: ({focused}) => (
<Icon
name={
focused ? 'chatbubble-ellipses' : 'chatbubble-ellipses-outline'
}
color={theme.white}
size={28}
/>
),
}}
name="ChatsScreen"
component={ChatsScreen}
listeners={{
tabPress: () => {
ReactNativeHapticFeedback.trigger('impactMedium')
},
}}
/>
Hello, does this library support tabBarBadge property?
https://reactnavigation.org/docs/tab-based-navigation/#add-badges-to-icons
Is there a way to set up a badge without rebuilding bar?
i installed the library it is working fine but tab bar is not hiding under keyboard modal . i set the "tabBarHideOnKeyboard: true" in the screenOption. kindly let me the if there is any work around or solution whatever it is Thanks
how to change the navigation bar white background color to transparent? I mean the color which is behind the selected tab
Hi! ๐
Firstly, thanks for your work on this project! ๐
When hiding the tabBar with tabBarStyle: { display: 'none' }
, a transparent block persists, preventing interaction with elements behind it. The issue can be fixed by adding pointerEvents="none" ,
I have attached screenshots demonstrating the issue and where the problem seems to reside within the component's styles. I hope this information is sufficient for a fix.
Stack Navigator (This should hide the Bottom Tab Bar when focused on "Home", "Levels" screens unfortunately it didn't). I only want to show the bottom-tab on MainScreen
.
I think it did hide the @react-navigation/bottom-tabs
but not the custom tab. I tried removing tabBar
and it did hide actually
const Navigation = ({ navigation, route }) => {
useLayoutEffect(() => {
const tabHiddenRoutes = ['Home', 'Levels'];
if (tabHiddenRoutes.includes(getFocusedRouteNameFromRoute(route))) {
navigation.setOptions({ tabBarStyle: { display: 'none' } });
} else {
navigation.setOptions({ tabBarStyle: { display: 'flex' } });
}
}, [navigation, route]);
return (
<Stack.Navigator screenOptions={{ headerShown: false }}>
<Stack.Screen name="MainScreen" component={MainScreen} />
<Stack.Screen name="Home" component={Home} />
<Stack.Screen name="Levels" component={Levels} />
</Stack.Navigator>
);
};
<Tab.Navigator
backBehavior="none"
screenOptions={{
headerShown: false,
tabBarActiveTintColor: colors.wrongLetter,
tabBarInactiveTintColor: colors.textWhite,
tabBarActiveBackgroundColor: colors.wrongLetter,
}}
tabBar={props => (
<BottomFabBar
{...props}
mode="default"
focusedButtonStyle={{
shadowOffset: { width: 0, height: 7 },
shadowColor: '#000',
shadowOpacity: 0.41,
shadowRadius: 9.11,
elevation: 10,
}}
bottomBarContainerStyle={{
position: 'absolute',
height: 75,
bottom: 0,
left: 0,
right: 0,
}}
/>
)}
>
<Tab.Screen .... />
<Tab.Screen .... />
<Tab.Screen .... />
<Tab.Screen .... />
<Tab.Screen .... />
</Tab.Navigator>
This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
These updates are currently rate-limited. Click on a checkbox below to force their creation now.
@types/jest
, babel-jest
, jest
, jest-environment-jsdom
)@react-navigation/bottom-tabs
, @react-navigation/native
)@semantic-release/npm
, semantic-release
)@commitlint/cli
, @commitlint/config-conventional
)react-native
, @types/react-native
)react
, react-test-renderer
)@commitlint/cli
, @commitlint/config-conventional
)@semantic-release/npm
, @semantic-release/release-notes-generator
, semantic-release
)@typescript-eslint/eslint-plugin
, @typescript-eslint/parser
)These updates have all been created already. Click a checkbox below to force a retry/rebase of any.
@babel/core
, @babel/runtime
)@typescript-eslint/eslint-plugin
, @typescript-eslint/parser
)com.facebook.flipper:flipper-network-plugin
, com.facebook.flipper:flipper
)example/ios/Podfile
.github/workflows/ci.yml
actions/checkout v3
borales/actions-yarn v4.2.0
borales/actions-yarn v4.2.0
borales/actions-yarn v4.2.0
borales/actions-yarn v4.2.0
borales/actions-yarn v4.2.0
actions/checkout v3
borales/actions-yarn v4.2.0
actions/setup-node v3
example/android/gradle.properties
com.facebook.flipper:flipper 0.189.0
com.facebook.flipper:flipper-network-plugin 0.189.0
com.facebook.flipper:flipper-fresco-plugin 0.189.0
example/android/settings.gradle
example/android/build.gradle
com.android.tools.build:gradle 8.0.0
example/android/app/build.gradle
androidx.swiperefreshlayout:swiperefreshlayout 1.1.0
example/android/gradle/wrapper/gradle-wrapper.properties
gradle 8.1
example/package.json
@react-native-community/masked-view 0.1.11
@react-navigation/bottom-tabs 6.5.7
@react-navigation/native 6.1.6
react 18.2.0
react-native 0.71.8
react-native-gesture-handler 2.9.0
react-native-paper 5.7.0
react-native-reanimated ^2.13.0
react-native-safe-area-context 4.5.1
react-native-screens 3.20.0
react-native-svg 13.9.0
react-native-vector-icons 9.2.0
@babel/core 7.21.4
@babel/runtime 7.21.0
@react-native-community/eslint-config 3.2.0
@types/jest 29.5.1
@types/react-native 0.72.0
@types/react-test-renderer 18.0.0
@typescript-eslint/eslint-plugin 5.59.0
@typescript-eslint/parser 5.59.0
babel-jest 29.5.0
babel-plugin-module-resolver 5.0.0
eslint 8.38.0
jest 29.5.0
metro-react-native-babel-preset 0.76.2
react-native-codegen 0.72.0
react-test-renderer 18.2.0
typescript 5.0.4
package.json
d3-shape ^3.0.0
@babel/core 7.21.4
@babel/runtime 7.21.0
@commitlint/cli 17.6.1
@commitlint/config-conventional 17.6.1
@react-native-community/bob 0.17.1
@react-native-community/eslint-config 3.2.0
@react-navigation/bottom-tabs 6.5.7
@react-navigation/native 6.1.6
@semantic-release/changelog 6.0.3
@semantic-release/git 10.0.1
@semantic-release/npm 10.0.3
@semantic-release/release-notes-generator 10.0.3
@types/jest 29.5.1
@types/react-native-vector-icons 6.4.13
@types/react-test-renderer 18.0.0
@typescript-eslint/eslint-plugin 5.59.0
add 2.0.6
babel-jest ^29.3.1
eslint 8.38.0
eslint-config-prettier 8.8.0
eslint-plugin-prettier 4.2.1
husky ^8.0.0
jest 29.5.0
jest-environment-jsdom ^29.3.1
lint-staged 13.2.1
metro-react-native-babel-preset 0.76.2
prettier 2.8.7
react 18.2.0
react-native 0.71.8
react-native-reanimated ^2.13.0
react-native-safe-area-context 4.5.1
react-native-svg 13.9.0
react-native-testing-library 2.2.0
react-native-typescript-transformer 1.2.13
react-native-vector-icons 9.2.0
react-test-renderer 18.2.0
semantic-release 21.0.1
ts-jest 29.1.0
tslint 6.1.3
tslint-react 5.0.0
typescript 5.0.4
@react-navigation/bottom-tabs *
@react-navigation/native *
react *
react-native *
react-native-safe-area-context ^4.2.1
react-native-vector-icons *
I can't click my back button when navigate from bottomfab bar to other screen. the other screen header cant'use.
Please Provide a provision for Font Size, Font Style and Font Weight for Bottom Tab Labels.
Why is it needed?
The application's theme or general font sizes differ from that of the bottom tab. Hence customizing the bottom label fonts will be a very useful feature.
My app uses I18Manager.forceRTL(true) wheneven an RTL locale is detected.
The rendered tab bar looks fuzzy and disturbed when rendered,
I managed to fix it on ios by stating direction: 'ltr' to the bottomBarContainerStyle
bottomBarContainerStyle={{ position: "absolute", bottom: 0, left: 0, direction: "ltr", right: 0, }}
on android it does not seem to be affected.
I am using "rn-wave-bottom-bar": "2.2.1",
Device Info:
Model Name: Lenovo Tab4 10
Android Version: 8.1.0
I have tried running my application on Tablet and the unselected icons are going outside the tab. Also the selected tab icon is not centred properly. Even the circle slightly appears to be oval and not round.
Can you please provide tablet support?
Hi @Jm-Zion,
Thanks for the great library. It works like charm. One thing I would like to add yo my tabBar was the name or the label of the tabBar. Given the animating tab, is there any possibility of adding the label to the tab bar or at least to the tabs which are inactive currently.
Any help would be great. Thanks a ton.
It is possible to set the speed movement for circle/square button active? i know there is props springConfig, but after iam working with it, it seem like to config the animation for the tab bar not the button active, thank you for the respons.
When i set bottomBarContainerStyle to absolute, bottom bar overlap screen.
bottomBarContainerStyle={{ position: 'absolute', bottom: 0, left: 0, right: 0, }}
If i unset bottomBarContainerStyle, looks weird..
If i set bottomBarContainerStyle to absolute,
overlap flatlist and scrollbar.
How can i fix this?
and also, focusedButtonStyle's shadow options are doesn't work.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.