Package Exports
- react-native-material-dropdown-v2-fixed
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (react-native-material-dropdown-v2-fixed) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
react-native-material-dropdown
Material dropdown with consistent behaviour on iOS and Android This fork contain a fix for the dropdown icon

Features
- Easy to use
- Consistent look and feel on iOS and Android
- Customizable font size, colors and animation duration
- Dynamic dropdown size and position
- Configurable visible item count
- RTL support
- Pure javascript implementation
Installation
npm install --save react-native-material-dropdown-v2-fixedUsage
import React, { Component } from 'react';
import { Dropdown } from 'react-native-material-dropdown-v2-fixed';
class Example extends Component {
render() {
let data = [{
value: 'Banana',
}, {
value: 'Mango',
}, {
value: 'Pear',
}];
return (
<Dropdown
icon='chevron-down'
iconColor='#E1E1E1'
label='Favorite Fruit'
data={data}
/>
);
}
}Properties
| name | description | type | default |
|---|---|---|---|
| label | Text field label text | String | - |
| error | Text field error text | String | - |
| icon | Text field right icon | String | chevron-down |
| animationDuration | Text field animation duration in ms | Number | 225 |
| fontSize | Text field font size | Number | 16 |
| labelFontSize | Text field label font size | Number | 12 |
| baseColor | Text field base color | String | rgba(0, 0, 0, .38) |
| textColor | Text field text color | String | rgba(0, 0, 0, .87) |
| iconColor | Text field icon color | String | rgba(0, 0, 0, 1) |
| itemColor | Dropdown item text color (inactive item) | String | rgba(0, 0, 0, .54) |
| selectedItemColor | Dropdown item text color (active item) | String | rgba(0, 0, 0, .87) |
| disabledItemColor | Dropdown item text color (disabled item) | String | rgba(0, 0, 0, .38) |
| dropdownPosition | Dropdown position (dynamic if undefined) | Number | - |
| itemCount | Dropdown visible item count | Number | 4 |
| itemPadding | Dropdown item vertical padding | Number | 8 |
| itemTextStyle | Dropdown item text styles | Object | - |
| dropdownOffset | Dropdown offset | Object | { top: 32, left: 0 } |
| dropdownMargins | Dropdown margins | Object | { min: 8, max: 16 } |
| data | Dropdown item data | Array | [] |
| value | Selected value | String | - |
| containerStyle | Styles for container view | Object | - |
| overlayStyle | Styles for overlay view | Object | - |
| pickerStyle | Styles for item picker view | Object | - |
| shadeOpacity | Shade opacity for dropdown items | Number | 0.12 |
| rippleOpacity | Opacity for ripple effect | Number | 0.54 |
| rippleInsets | Insets for ripple on base component | Object | { top: 16, bottom: -8 } |
| rippleCentered | Ripple on base component should be centered | Boolean | false |
| renderBase | Render base component | Function | - |
| renderAccessory | Render text field accessory | Function | - |
| valueExtractor | Extract value from item (args: item, index) | Function | ({ value }) => value |
| labelExtractor | Extract label from item (args: item, index) | Function | ({ label }) => label |
| propsExtractor | Extract props from item (args: item, index) | Function | () => null |
| onChangeText | Selection callback (args: value, index, data) | Function | - |
Other TextField, TextInput and TouchableWithoutFeedback properties will also work
Methods
| name | description | returns |
|---|---|---|
| focus() | Acquire focus (open dropdown) | - |
| blur() | Release focus (close dropdown) | - |
| value() | Get current value | String |
| selectedIndex() | Get selected index | Number |
| selectedItem() | Get selected item | Object |
| isFocused() | Get current focus state | Boolean |
Example
git clone https://github.com/mdslab87/react-native-material-dropdown
cd react-native-material-dropdown/example
npm install
npm run ios # or npm run androidCopyright and License
BSD License
Copyright 2017-2018 Alexander Nazarov. All rights reserved.