StyledButton.js 896 Bytes
Newer Older
YoonDongMin's avatar
DongM    
YoonDongMin committed
1
import React from 'react';
Choi Ga Young's avatar
Choi Ga Young committed
2
import { StyleSheet, Pressable, Text } from 'react-native';
YoonDongMin's avatar
DongM    
YoonDongMin committed
3

Soo Hyun Kim's avatar
Soo Hyun Kim committed
4
5
6
7
8
9
const StyledButton = ({
    name,
    onPress,
    style,
    disabled, 
}) => {
YoonDongMin's avatar
DongM    
YoonDongMin committed
10
11
12
13
    return (
        <Pressable
            style={({ pressed }) => [
                {
Soo Hyun Kim's avatar
Soo Hyun Kim committed
14
                    backgroundColor: disabled ? '#9c9c9c' : pressed ? '#adbfdb' : '#bfd3f2',
YoonDongMin's avatar
DongM    
YoonDongMin committed
15
                },
Soo Hyun Kim's avatar
Soo Hyun Kim committed
16
17
                styles.pressableStyle,
                style
YoonDongMin's avatar
DongM    
YoonDongMin committed
18
            ]}
Soo Hyun Kim's avatar
Soo Hyun Kim committed
19
20
21
            onPress={onPress}
            disabled={disabled}>
            <Text style={styles.buttonText}>{name}</Text>
YoonDongMin's avatar
DongM    
YoonDongMin committed
22
23
24
25
        </Pressable>
    );
};

Soo Hyun Kim's avatar
Soo Hyun Kim committed
26
const styles = StyleSheet.create({
YoonDongMin's avatar
DongM    
YoonDongMin committed
27
28
29
30
31
32
33
    pressableStyle: {
        alignItems: "center",
        justifyContent: "center",
        marginRight: 3,
        borderRadius: 2,
    },
    buttonText: {
YoonDongMin's avatar
YDm    
YoonDongMin committed
34
        fontFamily: 'GowunDodum-Regular',
YoonDongMin's avatar
DongM    
YoonDongMin committed
35
36
37
38
39
        fontSize: 20,
    },
})

export default StyledButton