GitXplorerGitXplorer
t

react-native-radial-context-menu

public
20 stars
2 forks
15 issues

Commits

List of commits on branch master.
Unverified
48e3b9a981b458b0f606655eea4513cb8dd6a53c

Bump mixin-deep from 1.3.1 to 1.3.2 (#5)

ddependabot[bot] committed 5 years ago
Unverified
c196ae14a6ae2bb73ca2d207443cd5b26610fa9c

Bump js-yaml from 3.12.0 to 3.13.1 (#4)

ddependabot[bot] committed 5 years ago
Unverified
2d8f139106c805fa512c21a89a01cf46cbeabe48

Bump handlebars from 4.0.12 to 4.2.0 (#3)

ddependabot[bot] committed 5 years ago
Unverified
5a87ef80a94206d95cd9d712908db4a4361faa09

Bump lodash from 4.17.11 to 4.17.15 (#2)

ddependabot[bot] committed 5 years ago
Verified
d18f7c1b344f5344dcfa4e9bc9a6c769bb69d05c

Merge pull request #1 from thegreatercurve/add-example

tthegreatercurve committed 6 years ago
Unverified
4aab84144fc59e81025fc688a732bb197c326156

add example with links to Expo Snack

tthegreatercurve committed 6 years ago

README

The README file for this repository.

React Native Radial Context Menu

An easy to use context menu component for React Native, inspired by The Guardian's radial context menu in their Android app.

A live demo of the component can he found as an Expo Snack here, or in the example folder.

Demo

Installation

npm i --save react-native-radial-context-menu

Usage

A simple example is shown below.

import { withRadialActionMenu } from 'react-native-radial-context-menu'

// Wrap any component with the provided Higher Order Component.
const ListItemWithMenu = withRadialActionMenu(() => <View />)

// Instantiate the wrapped component, passing in the buttons as props.
const App = () => (
    <ListItemWithMenu
      buttons={[
        { component: () => <Text>1</Text>, value: 1 },
        { component: () => <Text>2</Text>, value: 2 },
        { component: () => <Text>3</Text>, value: 3 },
        { component: () => <Text>4</Text>, value: 4 },
      ]}
    />
)

For something more complex, have a look at the Expo Snack demo.

Props

Prop Type Required Default Description
backgroundColor String Optional #fa8072 Background color for both the menu and buttons.
buttons Array Required [] Array of button objects. Each button requires a component and value.
buttonDiameter Number Optional 60 Width of each button.
menuDiameter Number Optional 90 Width of the menu at the touch origin.
onClose Function Optional void Callback fired when the menu is closed, with either the value of the chosen button or null.
onOpen Function Optional void Callback fired when the menu is opened.
openDelay Number Optional 0 Number of milliseconds on press in before the menu opens.
spreadAngle Number Optional 170 Angle between the first and last button from the touch origin.
spreadRadius Number Optional 100 Distance the buttons move out from the touch origin.
vibrate Boolean Optional true Vibrate on move over a button.
vibrateDuration Number Optional 50 Number of milliseconds of the vibration.

Contribute

We warmly welcome any contributions! You can open a Pull Request here.