react-native-raw-bottom-sheet
sparkles Add Your Own Component To Bottom Sheet Whatever You Want (Android and iOS).
- Super Lightweight Component
- Smooth Animation
- Add Your own Component To Bottom Sheet
- Customize Whatever You Like
- Support Gesture Swipe Down
- Support All Orientations
- Support Both Android And iOS
Showcase iOS | Showcase Android |
---|---|
Installation
npm i react-native-raw-bottom-sheet --save
or
yarn add react-native-raw-bottom-sheet
Example
import React, { Component } from "react";
import { View, Text, Button } from "react-native";
import RBSheet from "react-native-raw-bottom-sheet";
class Example extends Component {
render() {
return (
<View style={{ flex: 1, marginTop: 50, alignItems: "center" }}>
<Button
title="OPEN BOTTOM SHEET"
onPress={() => {
this.RBSheet.open();
}}
/>
<RBSheet
ref={ref => {
this.RBSheet = ref;
}}
height={300}
duration={250}
customStyles={{
container: {
justifyContent: "center",
alignItems: "center"
}
}}
>
<YourOwnComponent />
</RBSheet>
</View>
);
}
}
const YourOwnComponent = () => <Text>Your Pretty Component Goes Here</Text>;
export default Example;
Props
Prop | Type | Description | Default |
---|---|---|---|
height | number | Height of Bottom Sheet | 260 |
duration | number | Duration of Bottom Sheet animation | 300 (ms) |
closeOnSwipeDown | boolean | Use gesture swipe down to close Bottom Sheet | true |
closeOnPressMask | boolean | Press the area outside to close Bottom Sheet | true |
onClose | function | Callback function when Bottom Sheet was closed | |
customStyles | object | Custom style to Bottom Sheet | {} |
Available Custom Style
customStyles: {
wrapper: {...}, // The Background of Component
container: {...} // The Container of Bottom Sheet
}
Methods
Method Name | Description |
---|---|
open | Open Bottom Sheet |
close | Close Bottom Sheet |
Note
Always set ref
to RBSheet
and call each method by using this.RBSheet.methodName()
like example above.