-
Notifications
You must be signed in to change notification settings - Fork 2
/
index.js
60 lines (51 loc) · 1.41 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
import React from 'react'
import { View, StyleSheet, TouchableOpacity, Text } from 'react-native'
import { AntDesign } from '@expo/vector-icons'
const SimpleSelectButton = ({
text,
textSize,
iconName,
iconColor,
iconSize,
buttonDefaultColor,
buttonSelectedColor,
textDefaultColor,
textSelectedColor,
isChecked,
...props
}) => {
return (
<TouchableOpacity
{...props}
style={{ paddingVertical: 10, }}
>
<View
style={{
flexDirection: 'row',
borderRadius: 5,
overflow: 'hidden',
textAlign: 'center',
justifyContent: 'center',
backgroundColor: isChecked === true ? buttonSelectedColor : buttonDefaultColor
}}>
<Text
style={[styles.button_item, { fontSize: textSize, color: isChecked === true ? textSelectedColor : textDefaultColor } ]}>
{text}
</Text>
<Text
style={[styles.button_item, { position: 'absolute', right: 25, }]}>{isChecked === true ?
<AntDesign name={iconName} size={iconSize} color={iconColor} /> : null}
</Text>
</View>
</TouchableOpacity>
)
}
const styles = StyleSheet.create({
button_item: {
padding: 8,
marginVertical: 5,
borderRadius: 5,
textAlign: 'center'
},
})
export default SimpleSelectButton;