@rn-elementary/menu
v0.1.3
Published
Creates native picker in Swift UI and JetPack Compose
Downloads
5
Readme
menu
Creates native picker in UIKit and Kotlin.
npm
Demo
Motivation
Sometimes react native apps dont feel native due to the javascript components. With this library will be starting a project to have all the native components ready to use in the application. I couldnt find this kind of menu in the npm store so fastest way was to build it ;)
Installation
npm install @rn-elementary/menu
yarn add @rn-elementary/menu
Props
| Prop | Description | Type | Default |
| -------------- | ------------------------------------------------------------------------------------------------------------------- | -------------------------------------- | ------------- |
| title
| Title for the menu (only iOS) | String | "" |
| options
| Option to display in the menu | Array of String | [] |
| onSelect
| function which gives the index and title of the menu option selected. | Function | () => Void |
| layout
| It is used to overlap the native view over the react native component. Without this the component wont be tappable. | layout from react-native-picker-native | Important |
Usage
- Kindly look into the example/src/App.tsx as it has the full implementation.
import { PickerNativeView, usePickerLayout} from "@rn-elementary/menu";
// ...
const { layout, onLayout } = usePickerLayout();
// ...
<PickerNativeView
title={'Sample Title'}
options={[
'One',
'Two',
'Four',
'Five',
'Six',
'Seven',
'Eight',
'Nine',
'Ten',
]}
onSelect={(e) => {
console.log(e.nativeEvent.index);
console.log(e.nativeEvent.title);
}}
layout={layout}
>
<View
onLayout={onLayout}
style={{ marginTop: 200, width: 200, marginLeft: 20 }}
>
<Text
style={{
backgroundColor: 'red',
}}
>
CLICK ME
</Text>
</View>
Contributing
PR's are highly appreciated and so are issues.
See the contributing guide to learn how to contribute to the repository and the development workflow.
License
MIT
Made with create-react-native-library