react-native-material-menu

js
Material Menu for React Native
Version 2.0.0 License MIT
Keywords
react-nativereactmenumaterial-menureact-componentmaterialdropdown
INSTALL
Type:
Version:
- Static
- Latest Patch
- Latest Minor
- Latest Major
- 2.0.0
- 1.2.0
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.0
- 0.6.7
- 0.6.6
- 0.6.5
- 0.6.4
- 0.6.3
- 0.6.2
- 0.6.1
- 0.6.0
- 0.5.1
- 0.5.0
- 0.4.2
- 0.4.1
- 0.4.0
- 0.3.4
- 0.3.3
- 0.3.2
- 0.3.1
- 0.3.0
- 0.2.7
- 0.2.6
- 0.2.5
- 0.2.4
- 0.2.3
- 0.2.2
- 0.2.1
- 0.2.0
- 0.1.1
- 0.1.0
- 0.0.14
- 0.0.13
- 0.0.12
- 0.0.11
- 0.0.10
- 0.0.9
- 0.0.8
- 0.0.7
- 0.0.6
- 0.0.5
- 0.0.4
- 0.0.3
- 0.0.1
- 2.0.0-beta.2
- 2.0.0-beta.1
<script src=" https://cdn.jsdelivr.net/npm/react-native-material-menu@2.0.0/dist/index.min.js "></script>
react-native-material-menu ·

Pure JavaScript material menu component for React Native with automatic RTL support.

Install
Using yarn
yarn add react-native-material-menu
or using npm
npm install --save react-native-material-menu
Usage example (expo demo)
import React from 'react';
import React, { useState } from 'react';
import { View, Text } from 'react-native';
import { Menu, MenuItem, MenuDivider } from 'react-native-material-menu';
export default function App() {
const [visible, setVisible] = useState(false);
const hideMenu = () => setVisible(false);
const showMenu = () => setVisible(true);
return (
<View style={{ height: '100%', alignItems: 'center', justifyContent: 'center' }}>
<Menu
visible={visible}
anchor={<Text onPress={showMenu}>Show menu</Text>}
onRequestClose={hideMenu}
>
<MenuItem onPress={hideMenu}>Menu item 1</MenuItem>
<MenuItem onPress={hideMenu}>Menu item 2</MenuItem>
<MenuItem disabled>Disabled item</MenuItem>
<MenuDivider />
<MenuItem onPress={hideMenu}>Menu item 4</MenuItem>
</Menu>
</View>
);
}
Menu
name | description | type | default |
---|---|---|---|
children | Components rendered in menu (required) | ReactNode | - |
anchor | Button component (required) | ReactNode | - |
visible | Whether the Menu is currently visible | Boolean | - |
style | Menu style | Style | - |
onRequestClose | Callback when menu has become hidden | Function | - |
animationDuration | Changes show() and hide() duration | Number | 300 |
MenuItem
name | description | type | default |
---|---|---|---|
children | Rendered children (required) | ReactNode | - |
disabled | Disabled flag | Boolean | false |
disabledTextColor | Disabled text color | String | '#bdbdbd' |
onPress | Called function on press | Func | - |
style | Container style | Style | - |
textStyle | Text style | Style | - |
pressColor | Pressed color | String | '#e0e0e0' |
Children must be based on
<Text>
component (like text itself, strings, react-native-vector-icons or expo icons) otherwise you may get an error on a real device.
MenuDivider
name | description | type | default |
---|---|---|---|
color | Line color | String | 'rgba(0,0,0,0.12)' |
Pietile native kit
Also take a look at other our components for react-native - pietile-native-kit
License
MIT License. © Maksim Milyutin 2017-2021