react-native-checkbox-form
react-native-checkbox-form is a simple checkbox’s component, it works on Android and iOS, The Icon is used in the checkbox-form depends on react-native-vector-icons.
Installation
npm install react-native-checkbox-form --save
The part of checkbox-form depends on react-native-vector-icons, so if your application haven't link react-native-vector-icons, still must run following commond:
react-native link react-native-vector-icons
In addition, you can alse redirect to react-native-vector-icons, learn more about how to link it
Note: The checkbox-form is based on ECMAScript6, if you use React Native < v0.13
, maybe it don't run
Usage
1.General Use
import React, { Component } from 'react';
import { View } from 'react-native';
import CheckboxFormX from 'react-native-checkbox-form';
const mockData = [
{
label: 'label1',
value: 'one'
},
{
label: 'label2',
value: 'two'
},
{
label: 'label3',
value: 'three'
},
];
export default class PRNRadioForm extends Component {
_onSelect = ( item ) => {
console.log(item);
};
render() {
return (
<View style={styles.container}>
<View style={{ marginVertical: 10, backgroundColor: "#E7E7E7" }} >
<CheckboxFormX
style={{ width: 350 - 30 }}
dataSource={mockData}
itemShowKey="label"
itemCheckedKey="RNchecked"
iconSize={16}
formHorizontal={true}
labelHorizontal={false}
onChecked={(item) => this._onSelect(item)}
/>
</View>
</View>
);
}
}
2.Set default checked value
import React, { Component } from 'react';
import { View } from 'react-native';
import CheckboxFormX from 'react-native-checkbox-form';
const mockData = [
{
label: 'label1',
RNchecked: true
},
{
label: 'label2',
RNchecked: false
}
];
export default class PRNRadioForm extends Component {
_onSelect = ( item ) => {
console.log(item);
};
render() {
return (
<View style={styles.container}>
<View style={{ marginVertical: 10, backgroundColor: "#E7E7E7" }} >
<CheckboxFormX
style={{ width: 350 - 30 }}
dataSource={mockData}
itemShowKey="label"
itemCheckedKey="RNchecked"
iconSize={16}
formHorizontal={true}
labelHorizontal={false}
onChecked={(item) => this._onSelect(item)}
/>
</View>
</View>
);
}
}
As shown above, add the attribute corresponding to the value of itemCheckedKey in the datasource.Thus whether active control is selected
Properties
Prop | Default | Type | Description |
---|---|---|---|
style | - | object |
Specify the style of the checkbox-form, eg. width、backgroundColor..., but don't suggest setting height |
textStyle | - | object |
Specify the text style in the check box |
dataSource | - | array |
Specify the display data of checkbox-form. array type value must match the specified format and it's required |
itemShowKey | 'label' | string |
Specify the display property of checkbox-form's each item from dataSource |
itemCheckedKey | 'checked' | string |
Specify the real-selected property of checkbox-form's each item from dataSource |
iconSize | 20 | number |
Specify the size of checkbox-form's icon |
iconColor | '#2f86d5' | string |
Specify the color of checkbox-form's icon |
onChecked | - | function |
This is called when the user click the Checkbox's item in the UI, The first and only argument will return whole dataSource, and what property is specified by itemCheckedKey is used for confirm the item whether is selected |
formHorizontal | false | boolean |
Specify the form whether can horizontal arrangement |
labelHorizontal | true | boolean |
Specify between icon and label whether can horizontal arrangement |